في لغة C، تُستخدم جملة
if...else
لاتخاذ القرارات في البرنامج. تسمح لك بتنفيذ مجموعة من التعليمات البرمجية إذا كان شرط معين صحيحًا، وتنفيذ مجموعة أخرى من التعليمات إذا كان الشرط خاطئًا.بنية جملة if...else
:
C
if (condition) { // كود يتم تنفيذه إذا كان الشرط صحيحًا (true)} else { // كود يتم تنفيذه إذا كان الشرط خاطئًا (false)}
if
: الكلمة المفتاحية التي تبدأ جملة الشرط.(condition)
: تعبير منطقي يتم تقييمه إلى إماtrue
(صحيح) أوfalse
(خاطئ). يمكن أن يكون هذا التعبير عبارة عن مقارنة بين متغيرين، أو فحص قيمة متغير، أو أي تعبير منطقي آخر.{}
: أقواس معقوفة تُستخدم لتحديد كتلة الكود التي سيتم تنفيذها. الكود الموجود داخل الأقواس بعدif
سيتم تنفيذه فقط إذا كان الشرط صحيحًا. الكود الموجود داخل الأقواس بعدelse
سيتم تنفيذه فقط إذا كان الشرط خاطئًا.else
: الكلمة المفتاحية الاختيارية التي تُستخدم لتحديد كتلة الكود التي سيتم تنفيذها إذا كان الشرط خاطئًا.
مثال بسيط:
C
#include <stdio.h>
int main() { int age = 20;
if (age >= 18) { printf("أنت بالغ.\n"); } else { printf("أنت قاصر.\n"); }
return 0;}
في هذا المثال:
- يتم تعريف متغير
age
بقيمة 20. - يتم فحص الشرط
age >= 18
. نظرًا لأن 20 أكبر من أو يساوي 18، فإن الشرط صحيح. - يتم تنفيذ الكود داخل كتلة
if
، ويتم طباعة "أنت بالغ.".
مثال آخر مع شروط متعددة باستخدام else if
:
يمكنك استخدام else if
لإضافة شروط إضافية إلى جملة if...else
.
C
#include <stdio.h>
int main() { int score = 75;
if (score >= 90) { printf("ممتاز.\n"); } else if (score >= 80) { printf("جيد جدًا.\n"); } else if (score >= 70) { printf("جيد.\n"); } else { printf("مقبول.\n"); }
return 0;}
في هذا المثال، يتم فحص الشروط بالترتيب. إذا كان أحد الشروط صحيحًا، يتم تنفيذ الكود الخاص به ويتم تخطي بقية الشروط.
ملاحظات مهمة:
- إذا كان لديك سطر واحد فقط من الكود داخل كتلة
if
أوelse
، يمكنك حذف الأقواس المعقوفة، ولكن يُفضل استخدامها دائمًا لجعل الكود أكثر وضوحًا وقراءة. - يمكن استخدام عوامل المقارنة المختلفة في الشروط، مثل:
==
(يساوي)!=
(لا يساوي)>
(أكبر من)<
(أصغر من)>=
(أكبر من أو يساوي)<=
(أصغر من أو يساوي)
- يمكن استخدام العوامل المنطقية لدمج الشروط، مثل:
&&
(و)||
(أو)!
(ليس)
جملة if...else
هي أداة أساسية في لغة C (وفي معظم لغات البرمجة الأخرى) للتحكم في تدفق البرنامج واتخاذ القرارات بناءً على الشروط المختلفة.