English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
كامل الأمثلة البرمجية في لغة C
في هذا المثال، ستتعلم كيفية التحقق من أن الحرف المدخل من قبل المستخدم هو نواة أو صوت
لفهم هذا المثال، يجب أن تعرف ما يليبرمجة لغة Cالموضوع:
هذه الخمس حروف A، E، I، O وU تُدعى نوتات. جميع الحروف الأخرى غير هذه الخمس نوتات تُدعى صوت.
يفرض هذا البرنامج أن المستخدم سيقوم دائمًا بإدخال حرف.
#include <stdio.h> int main() { char c; int lowercase, uppercase; printf("ادخل حرفًا: "); scanf("%c", &c); // إذا كان المتغير c صغيرًا، فإن القيمة ستكون 1 lowercase = (c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u'); // إذا كان المتغير c كبيرًا، فإن القيمة ستكون 1 uppercase = (c == 'A' || c == 'E' || c == 'I' || c == 'O' || c == 'U'); // إذا كان c صغيرًا أو كبيرًا، فإن القيمة ستكون 1 إذا (الصغير أو الكبير) printf("%c هو نوت.", c); else printf("%c هو صوت عكسي", c); return 0; }
نتيجة الإخراج
ادخل حرفًا: G G هو صوت
حرف المستخدم يتم تخزينه في المتغير c.
إذا كان c صغيرًا هو نوت، فإن قيمة lowercase ستكون 1 (صحيح)، وأي حرف آخر سيكون 0 (خطأ).
بالمثل، إذا كان uppercase المتغير c كبيرًا هو نوت، فإن القيمة ستكون 1 (صحيح)، وأي حرف آخر سيكون 0 (خطأ).
إذا كان lowercase أو uppercase كانا واحدا منهما 1 (صحيح)، فإن الحرف المدخل هو نوت.
لكن، إذا كانت متغيرات lowercase وuppercase تساوي 0، فإن الحرف المدخل هو صوت.
ملاحظة:يفرض هذا البرنامج أن المستخدم سيقوم بإدخال حرف. إذا أدخل المستخدم حرفًا غير لاتيني، فإنه سيظهر هذا الحرف كعدد ثابت.
لحل هذه المشكلة، يمكننا استخدامisalpha()دالة isalpha() تتحقق من whether a character is a letter.
#include <stdio.h> #include <ctype.h> int main() { char c; int lowercase, uppercase; printf("ادخل حرفًا: "); scanf("%c", &c); // إذا كان المتغير c صغيرًا، فإن القيمة ستكون 1 lowercase = (c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u'); // إذا كان المتغير c كبيرًا، فإن القيمة ستكون 1 uppercase = (c == 'A' || c == 'E' || c == 'I' || c == 'O' || c == 'U'); // إذا كان c ليس حرفًا، فإنه سيظهر رسالة خطأ if (!isalpha(c)) { printf("خطأ! حرف غير لاتيني."); } // إذا كان c حرفًا else { // إذا كان c صغيرًا أو كبيرًا، فإن القيمة ستكون 1 إذا (الصغير أو الكبير) printf("%c هو صوت مفتوح", c); else printf("%c هو صوت عكسي", c); } return 0; }
الآن، إذا كان المستخدم يدخل رموزًا غير حروفية، سترى:
خطأ! تحتوي على رموز غير حروفية.