Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

مراجعة: دوال السلاسل النصية الأساسية

جزء من قسم Logic & Flow في رحلة C على Coddy — الدرس 19 من 63.

challenge icon

التحدي

سهل

اكتب برنامجاً بلغة C يعالج أزواجاً من الكلمات ويستعرض جميع وظائف السلاسل النصية (string functions) الأساسية التي تعلمتها. يجب على برنامجك القيام بما يلي:

  1. قراءة عدد صحيح n يمثل عدد أزواج الكلمات التي سيتم معالجتها
  2. لكل زوج من الكلمات:
    • قراءة الكلمة الأولى من المدخلات
    • قراءة الكلمة الثانية من المدخلات
    • استخدام strlen() لحساب وطباعة طول كل كلمة
    • استخدام strcmp() لمقارنة الكلمتين وطباعة ما إذا كانتا متطابقتين أو مختلفتين
    • إنشاء سلسلة نصية مدمجة عن طريق دمج الكلمة الأولى، ومسافة، والكلمة الثانية باستخدام strcpy() و strcat()
    • طباعة السلسلة النصية المدمجة
  3. بعد معالجة جميع الأزواج، ابحث عن الزوج الذي شكل أطول سلسلة نصية مدمجة وقم بطباعته

تذكر تضمين ملف الترويسة <string.h> لاستخدام وظائف السلاسل النصية.

يجب أن يعرض مخرجك النتائج بالتنسيق التالي:

Word 1: [word1] (Length: [length1])
Word 2: [word2] (Length: [length2])
Comparison: [identical/different]
Combined: [word1 word2]
Word 1: [word1] (Length: [length1])
Word 2: [word2] (Length: [length2])
Comparison: [identical/different]
Combined: [word1 word2]
...
Longest combined string: [longest_combined_string]

على سبيل المثال، إذا كانت المدخلات هي:

3
hello
world
test
test
programming
language

يجب أن يكون مخرجك:

Word 1: hello (Length: 5)
Word 2: world (Length: 5)
Comparison: different
Combined: hello world
Word 1: test (Length: 4)
Word 2: test (Length: 4)
Comparison: identical
Combined: test test
Word 1: programming (Length: 11)
Word 2: language (Length: 8)
Comparison: different
Combined: programming language
Longest combined string: programming language

يختبر هذا التحدي فهمك للجمع بين strlen() لحساب الطول، و strcmp() لمقارنة السلاسل النصية، و strcpy() مع strcat() لدمج السلاسل النصية في برنامج شامل يعالج أزواجاً متعددة من السلاسل النصية.

جرّب بنفسك

#include <stdio.h>
#include <string.h>

int main() {
    int n;
    scanf("%d", &n);
    
    char word1[100], word2[100];
    char combined[200];
    char longest_combined[200] = "";
    
    // TODO: اكتب كودك هنا
    // معالجة كل زوج من الكلمات والعثور على أطول سلسلة مدمجة
    
    return 0;
}

جميع دروس Logic & Flow