مراجعة: دوال السلاسل النصية الأساسية
جزء من قسم Logic & Flow في رحلة C على Coddy — الدرس 19 من 63.
التحدي
سهلاكتب برنامجاً بلغة C يعالج أزواجاً من الكلمات ويستعرض جميع وظائف السلاسل النصية (string functions) الأساسية التي تعلمتها. يجب على برنامجك القيام بما يلي:
- قراءة عدد صحيح
nيمثل عدد أزواج الكلمات التي سيتم معالجتها - لكل زوج من الكلمات:
- قراءة الكلمة الأولى من المدخلات
- قراءة الكلمة الثانية من المدخلات
- استخدام
strlen()لحساب وطباعة طول كل كلمة - استخدام
strcmp()لمقارنة الكلمتين وطباعة ما إذا كانتا متطابقتين أو مختلفتين - إنشاء سلسلة نصية مدمجة عن طريق دمج الكلمة الأولى، ومسافة، والكلمة الثانية باستخدام
strcpy()وstrcat() - طباعة السلسلة النصية المدمجة
- بعد معالجة جميع الأزواج، ابحث عن الزوج الذي شكل أطول سلسلة نصية مدمجة وقم بطباعته
تذكر تضمين ملف الترويسة <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
1أساسيات المؤشرات
ما هو المؤشر؟الإعلان عن المؤشراتعامل العنوان (&)عامل إلغاء المرجعية (*)مؤشرات NULLمراجعة: أساسيات المؤشرات4مشروع: أداة نصوص بسيطة
نظرة عامة على المشروععد الأحرف2المؤشرات والمصفوفات
أسماء المصفوفات كمؤشراتعناصر المصفوفة - المؤشراتالعمليات الحسابية على المؤشراتمقارنة المؤشراتمراجعة: التنقل في المصفوفة باستخدام المؤشرات5المؤشرات والدوال
التمرير بالقيمةتمرير المؤشرات إلى الدوالتعديل المتغيرات عبر المؤشراتمثال كلاسيكي: التبديلتمرير المصفوفات إلى الدوالملخص: وسائط المؤشرات في الدوال8الهياكل والمؤشرات
المؤشرات إلى الهياكلعامل السهم (->)تمرير الهياكل بالقيمةتمرير مؤشرات الهياكلالتخصيص الديناميكي للهياكلمراجعة: تعديل الهياكل باستخدام المؤشرات11تحديات المراجعة النهائية
مراجعة: دمج السلاسل النصية الديناميكيمراجعة: مصفوفة من الـ Structsمراجعة: عداد تكرار الكلمات3مصفوفات الأحرف والسلاسل النصية
السلاسل النصية كمصفوفات charالمُنهي الصفري (Null Terminator)إدخال السلاسل النصية باستخدام scanfاستخدام strlen()استخدام strcpy()استخدام strcat()استخدام strcmp()مراجعة: دوال السلاسل النصية الأساسية