دستورات شرطی در C
مثالدر این بخش به بررسی دستورات شرطی در C می پردازیم، زبان برنامهنویسی C بهعنوان یکی از زبانهای پایه و قدرتمند در دنیای نرمافزار شناخته میشود که نقش بزرگی در توسعه سیستمها و نرمافزارهای کاربردی ایفا میکند. یکی از ویژگیهای کلیدی این زبان، امکان تصمیمگیری در برنامهها از طریق دستورات شرطی است. دستورات شرطی به برنامهنویسان اجازه میدهند که مسیر اجرای کد را براساس شرایط خاص تعیین کنند. این قابلیت یکی از ابزارهای اساسی برای ایجاد نرمافزارهای هوشمند است که بتوانند به ورودیها و شرایط مختلف واکنش نشان دهند.
در این مقاله، به بررسی جامع دستورات شرطی در C میپردازیم. در ابتدا، انواع مختلف این دستورات را معرفی میکنیم و سپس نحوه استفاده از آنها را با مثالهایی روشن توضیح خواهیم داد. هدف این است که شما بتوانید با درک عمیق از این دستورات، برنامههایی منعطفتر و کارآمدتر بنویسید.
مفهوم کلی دستورات شرطی
دستورات شرطی ابزارهایی هستند که امکان اجرای بخشهایی از کد را فقط در صورت تحقق یک شرط خاص فراهم میکنند. این شرایط معمولاً در قالب عبارات منطقی تعریف میشوند که میتوانند درست (True) یا غلط (False) باشند.
انواع اصلی دستورات شرطی در C
- if: سادهترین دستور شرطی برای اجرای کد در صورت تحقق یک شرط.
- if-else: اجرای کد متفاوت بسته به اینکه شرط برقرار باشد یا نه.
- if-else if-else: برای تصمیمگیری در بین چندین گزینه.
- switch-case: ابزاری برای بررسی چندین مقدار ممکن برای یک متغیر.
- شرط سهگانه (ternary operator): روشی کوتاه برای نوشتن دستور شرطی.
دستور if
دستور if
ابتداییترین شکل تصمیمگیری در C است. این دستور بررسی میکند که آیا یک شرط برقرار است یا خیر و در صورت صحیح بودن شرط، یک بلوک کد اجرا میشود.
ساختار کلی دستور if
if (شرط) {
// کدهایی که در صورت تحقق شرط اجرا میشوند
}
مثال
توضیح مثال
- ابتدا متغیری به نام
number
تعریف شده و مقدار10
به آن اختصاص داده شده است. - شرط
number > 5
بررسی میکند که آیا مقدار متغیرnumber
بزرگتر از 5 است یا خیر. - چون شرط صحیح است، پیام “Number is greater than 5” چاپ میشود.
دستور if-else
دستور if-else
امکان اجرای یک بلوک کد جایگزین را در صورت برقرار نبودن شرط فراهم میکند.
ساختار کلی دستور if-else
if (شرط) {
// کدهایی که در صورت تحقق شرط اجرا میشوند
} else {
// کدهایی که در صورت عدم تحقق شرط اجرا میشوند
}
مثال
توضیح مثال
- در اینجا شرط بررسی میکند که آیا
number
عددی زوج است یا نه. - اگر باقیمانده تقسیم
number
بر 2 برابر صفر باشد، شرط برقرار است و پیام “Even number” چاپ میشود؛ در غیر این صورت پیام “Odd number” چاپ خواهد شد.
دستور if-else if-else
این نوع از دستور برای شرایط چندگانه استفاده میشود و به ما امکان میدهد که چندین شرط مختلف را بررسی کنیم.
ساختار کلی
if (شرط1) {
// کدهایی که در صورت تحقق شرط1 اجرا میشوند
} else if (شرط2) {
// کدهایی که در صورت تحقق شرط2 اجرا میشوند
} else {
// کدهایی که در صورت عدم تحقق هیچیک از شرایط بالا اجرا میشوند
}
مثال
توضیح مثال
- نمره دانشآموز (
score
) بررسی میشود. - اگر نمره بزرگتر یا مساوی 90 باشد، “Grade: A” چاپ میشود.
- اگر نمره بین 75 و 89 باشد، “Grade: B” چاپ میشود.
- در غیر این صورت “Grade: C” نمایش داده خواهد شد.
دستور switch-case
دستور switch-case
برای بررسی مقدارهای خاص استفاده میشود. این دستور زمانی مفید است که تعداد زیادی مقدار مشخص برای بررسی وجود داشته باشد.
ساختار کلی
switch (متغیر) {
case مقدار1:
// کدهایی که در صورت مطابقت با مقدار1 اجرا میشوند
break;
case مقدار2:
// کدهایی که در صورت مطابقت با مقدار2 اجرا میشوند
break;
default:
// کدهایی که در صورت عدم مطابقت با هیچیک از مقادیر بالا اجرا میشوند
}
مثال
توضیح مثال
- مقدار متغیر
day
بررسی میشود. - اگر مقدار
day
برابر با 3 باشد، پیام “Wednesday” چاپ میشود. - اگر مقدار با هیچکدام از موارد تطابق نداشته باشد، پیام “Invalid day” چاپ میشود.
شرط سهگانه (Ternary Operator)
عملگر شرط سهگانه روشی کوتاه برای نوشتن دستورات شرطی است.
ساختار کلی
شرط ? نتیجه_اگر_صحیح : نتیجه_اگر_غلط;
مثال
توضیح مثال
- شرط بررسی میکند که آیا
number > 5
صحیح است یا نه. - اگر شرط درست باشد، مقدار “Greater than 5” به
result
اختصاص داده میشود؛ در غیر این صورت “Less than or equal to 5” اختصاص داده خواهد شد.
دستورات شرطی در زبان C ابزارهای بسیار قدرتمندی برای مدیریت جریان برنامه هستند. با استفاده از این دستورات، میتوانید برنامههایی بنویسید که با توجه به شرایط مختلف تصمیمگیری کنند و عملکرد متفاوتی داشته باشند. از if
ساده گرفته تا switch-case
و شرط سهگانه، هر کدام بسته به نیاز شما کارایی خود را دارند. تسلط بر این مفاهیم به شما کمک میکند تا برنامههای کارآمدتر و قابل فهمتری ایجاد کنید.
آیا این مطلب برای شما مفید بود ؟