تحديات برمجيةالتحدي السادس - حل التمرين الرابع بلغة C
المطلوب
قم بتعريف دالة إسمها PrintLongestName
, عند استدعاءها نمرر لها مصفوفة تحتوي على أسماء أشخاص فتقوم بطباعة الإسم الأطول و عدد أحرفه.
بعدها قم بإنشاء مصفوفة أسماء في البرنامج و تجربة استدعاء الدالة لمعرفة ما هو الإسم الأطول الموجود في المصفوفة.
الحل بلغة C
// printLongestName() هنا قمنا بتعريف الدالة void printLongestName(char *arr[], int arrLength) { int longestWordLength = 0; int longestWordIndex = 0; for (int i = 0; i < arrLength; i++) { if (strlen(arr[i]) > longestWordLength) { longestWordLength = strlen(arr[i]); longestWordIndex = i; } } printf("The longest name is '%s', which is contain %d characters", arr[longestWordIndex], longestWordLength); } // printLongestName() هنا قمنا بإنشاء مصفوفة أرقام أحادية و تجربة الدالة void main() { char *names[] = {"Mhamad", "Abdullah", "Rami", "Zeina", "Marwa"}; int arrLength = sizeof(names) / sizeof(names[0]); printLongestName(names, arrLength); }
سنحصل على النتيجة التالية عند التشغيل في حال كانت المصفوفة تحتوي على نفس القيم المجهزة فيها.
The longest name is 'Abdullah', which is contain 8 characters