switch در زبان C – ساختار شرط

switch در زبان C

switch در زبان C

switch در زبان C مشابه ساختار شرط هست و ساختار کلی اون بصورت مقابله:

عبارت  (در خط اول) سوئیچ ارزیابی میشه ، بعد نتیجه ارزیابی از بالا به پایین با مقـادیر ذکـر شـده (مقـدار 1 ،مقـدار2 و…) مقایسه میشه. اگر نتیجه ارزیابی با یکی از مقادیر case برابر بشه دستورات داخل آن case اجرا میشود و بعد با استفاده از دستور break از این ساختار سوئیچ خارج میشه. اگر نتیجـه ارزیـابی بـا هیچکـدام از مقـادیر case برابـر نباشد مجموعه دستورات default اجرا میشه.

 

برای switch در زبان C به نکات زیر توجه کنید !

1 -عبارت جلوي سوئیچ باید از نوع صحیح یا کاراکتری باشه.

2 -مقادیر جلوي caseها نباید باهم مساوی باشن.

3 -اگر در یک case از دستور break استفاده نشه پس از اجراي دستورات مربوط به این case ،مجموعه دستورات موجود در case بعدی هم اجرا میشه.

فرض میگیریم 3 مقدار سوئیچ داریم ،اگر عبارت برابر با مقدار 2 باشه ، از مجموعه دستورات کیس اول رد میشه و کیس دوم اجرا میشه. اما اگر از دستور break در انتهای کیس دوم استفاده نکنیم چی میشه ؟ درواقع تمامی کیس های دیگه به ترتیب اجرا میشه! پس حتما اگر میخواین یک کیس اجرا بشه و بعد بره بیرون از دستورات سوئیچ ، break رو فراموش نکنید.

4 -اگر بخواهیم دو یا چند شرط را در ساختار سوئیچ با هم or کنیم کافیه چند case را که میخواهیم باهم or کنیم ، پشت سرهم قرار بدیم.

خروجی برنامه زیر به ازای مقادیر مختلف case چیست؟

پاسخ:

اگر عملگر ورودی ‘+’ باشد مقدار i برابر 3 میشود.
اگر عملگر ورودی ‘-’ باشد مقدار i برابر 2 میشود.
اگر عملگر ورودی ‘*’ باشد مقدار i برابر 1 میشود.

 

مثال برای نکته 4 :قسمت مشخص شده به معناي or است. یعنی عمل ضرب به ازای وارد کردن عملگر ‘*’ یا ‘x‘ انجام میشود.

در این مثال or کردنِ دستور کیس رو برای عمل ضرب انجام دادیم.

در این برنامه یک عدد بعنوان ورودی اول و بعد از اون عملگر و بعد عدد دوم به عنوان ورودی دریافت میشه و نسبت به عملگری که در ورودی اومده عملیات جمع یا ضرب روی اعداد انجام میشه.

مثال بعدی:

در این برنامه درواقع اومدیم همون برنامه قبلی رو کامل کردیم ،یعنی هم عمل تفریق و تقسیم رو اضافه کردیم  و یعنی اگر به عنوان عملگر مقداری جز اپراتور های – + * در ورودی قرار بگیره برنامه ارور نشون میده روی صفحه و یا برای تقسیم بر صفر که جوابش مبهمه هم ارور در نظر گرفتیم و پیغام no answer رو به کاربر نشون میدیم.

 تمامی کد هارو در نرم افزار devc++ میتونید امتحان کنید!

switch در زبان C هم به پایان رسید و در جلسه بعد آموزش زبان c رو ادامه میدیم 🙂

حمیدرضا مودت

یک مهندس الکترونیک ، علاقه مند به یاد دادن و یاد گرفتن پیرامون دانش برق و الکترونیک

شما ممکن است این را هم بپسندید

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

از لوینیک حمایت کنید