گاهی در برنامه باید تصمیمگیری کنیم، یعنی تحت شرایطی گروهی از دستورها اجرا شوند و گروهی دیگر اجرا نشوند، که در این صورت از ساختار شرطی استفاده میکنیم. ساختار شرطی یکی از ساختارهای زبان ++C (سیپلاسپلاس) است که یاد گرفتن آن برای برنامهنویسی ضروری است.
این دستور شرطی که برای دو یا چند شرط بکار میرود. اگر شرط در دستور if درست باشد دستورها اجرا شده و بقیه اجرا نمیشوند، اگر شرط if درست نباشد کامپایلر سراغ دستور بعدی میرود و اگر هیچکدام درست نباشند دستور else اجرا میشود. این دستور که شامل ifهای تو در تو نیز هست.
فرم کلی این دستور:
ساختار تصمیم گیری دیگری است که در آن فقط عمل مقایسه تساوی صورت میگیرد.
نکات:
عبارت داخل پرانتز ارزیابی میشود و مقدار آن به ترتیب با مقدار عبارت هر کدام از caseها مقایسه میشود و اگر با مقدار عبارت case اول برابر بود دستورهای آن case فقط اجرا میشود و با اجرای دستور break از ساختار switch خارج میشود.
اگر عبارت داخل پرانتز با مقدار عبارت case برقرار نبود با مقدار عبارت caseبعدی عمل مقایسه میشود واگر باهیچ کدام از caseها برابر نبود دستورهای قسمت default اجرا میشوند.
فلوچارت دستور شرطی switchمقدار عبارات (exp) فقط از نوع int (داده صحیح) یا char (داده کاراکتری) است و اگر در یک case از دستور break استفاده نشود case بعدی هم اجرا میشود. فرم کلی ساختارswitch :
دستور break: این دستور موجب خروج از حلقههای تکرار میشود. اگر چند حلقه تودرتو وجود داشته باشد، این دستور موجب خروج از داخلیترین حلقه تکرار میشود. کاربرد دیگر این دستور، خاتمه دادن به ساختار switch است.