هي مجموعة عبارات شرطية "Case" ويقارن القيمة عند كل "Case" مع المتغير في "Switch". ويتم التحقق من الشروط وقت التنفيذ فإذا لم يتحقق الشرط الأول ينتقل إلى "Case" الثانية واذا لم يتحقق الشرط الثاني ينتقل إلى "Case" الثالثة حتى أخيراً يصل إلى الشرط الذي يتحقق وإذا تحقق واحد من "Case" سوف ينفذ ما في داخلها ويهمل البقية وإذا لم ينفذ إي واحد منهن سوف يتجه لينفذ ما في داخل "default" وتكون مشابه كثيرا جداً الى "if else if" ويكون الشكل العام لها:
- Truth of Case: هو المتغير أو عملية رياضية الذي ينتج عنها قيمة معينه تتم مقارنه هذه القيمة مع كل condition موجودة في كل Case وأيها يحقق الشرط ينفذ البرنامج Statement الخاص به. شاهد هذا التوضيح في المثال لتوضيح الصورة إذا كان لدينا متغير اسمه Day_Number وتريد لينفذ احد الشروط هو أن يكون قيمته (51) تكتب هكذا في جمل شرطية:
في حالة Switch--Case نكتبها هكذا:
- حال "switch case" كحال الجمل الشرطية إي إذا كنا نقارن مع حرف نضعه هكذا:
حيث أن "do some thing" هي أي عدد من الاكواد البرمجية يمكن كتابتها وحسب الحاجة وتذكر إذا أردنا أن نكتب أكثر من سطر برمجي داخل Case يجب أن نضعها داخل قوسين وبعدها نكتب كلمة Break لانة في حال تحقق الشرط سيخرج من Switch Case بشكل كامل.
- إي أن إذا تحقق condition1 سوف ينفذ Statement1 وينتقل بعدها إلى خطوة جديدة.
- إذا لم يتحقق condition1 سوف ينتقل الى condition2 واذا تحقق الشرط سوف ينفذ Statement2 وينتقل بعدها الى خطوة جديدة.
- اما اذا لم يتحقق اي condition سوف ينفذ ما موجود في default وبعدها ينتقل الى خطوة جديدةز
- نلاحظ وجود Break في نهاية كل Case هذا شيء ثابت في هيكلية هذه الدالة لكي يخرج من Switch بعد تحقق احد الشروط.
مثال: لدينا المعومات التالية عن هؤلاء الأشخاص نريد مجرد كتابة أول حرف من اسم الشخص يعطيك المعلومات الكاملة عنه؟
.Ali: his names Ali kammel,20 Year old, third stage-
.Salem: his names Salem kammel,18 Year old, third stage-
.Hussien: his names Hussien Ahmmed Taleb,21 Year old, third stage eng.Computer-
- خطوة رقم 1 عرفنا متغير باسم index-of-name من نوع char.
- خطوة رقم 2 طباعة رسالة للمستخدم بادخال الحرف الاول من الاسم.
- خطوة رقم 3 عمل ادخال للحرف.
- خطوة رقم 4 أدخلنا الحرف الذي ادخله المستخدم في قائمة الخيارات وهي Switch.
- خطوة رقم 5 تحتوي حالة شرطية لأول حرف من اسم الشخص "Ali" وتلاحظ الأحرف في المقارنة توضع بين علامة تنصيص واحدة من الجانبين هكذا 'A'.
- خطوة رقم 6 تطبع سجل هذا الشخص إذا كان هوا المطلوب.
- خطوة رقم 7 توقف الـ Case لهذة الحالة. اما بقية الخطوات فهي نفس الشيئ.
وضع عبارات شرطية داخل جمل Switch
يمكن وضع عبارات if الشرطية بمختلف أنواعها داخل كل Case حالها كحال إي كود برمجي أخر.
على سبيل المثال: برنامج تدخل رقم من شاشة التنفيذ ثم يطلب من المستخدم إدخال رقم العملية التي يريد أن يؤديها على هذه الرقم إذا ادخل المستخدم رقم واحد سوف يبين له هل الرقم فردي أم زوجي وإذا ادخل رقم اثنان يبين له هل الرقم اكبر من صفر أو اصغر منه