您好,登錄后才能下訂單哦!
今天小編給大家分享一下C++的程序流程控制實例分析的相關知識點,內容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。
C++支持最基本的三種程序運行結構:
順序結構
選擇結構
循環結構
順序結構:程序按順序執行,不發生跳轉
選擇結構:依據條件是否滿足,有選擇的執行相應功能
循環結構:依據條件是否滿足,循環多次執行某段代碼 二、選擇結構 1、if語句
作用: 執行滿足條件的語句
if語句的三種形式:
單行格式if語句
多行格式if語句
多條件的if語句
單行格式if語句:if(條件){ 條件滿足執行的語句 }
代碼示例:
int main() { //選擇結構-單行if語句 //輸入一個分數,如果分數大于600分,視為考上一本大學,并在屏幕上打印 int score = 0; cout << "請輸入一個分數:" << endl; cin >> score; cout << "您輸入的分數為: " << score << endl; //if語句 //注意事項,在if判斷語句后面,不要加分號 if (score > 600) { cout << "我考上了一本大學!!!" << endl; } return 0; }
注意:if條件表達式后不要加分號
多行格式if語句:if(條件){ 條件滿足執行的語句 }else{ 條件不滿足執行的語句 };
代碼示例:
int main() { //選擇結構-單行if語句 //輸入一個分數,如果分數大于600分,視為考上一本大學,并在屏幕上打印 int score = 0; cout << "請輸入一個分數:" << endl; cin >> score; cout << "您輸入的分數為: " << score << endl; //if語句 //注意事項,在if判斷語句后面,不要加分號 if (score > 600) { cout << "我考上了一本大學!!!" << endl; } return 0; }
多條件的if語句:if(條件1){ 條件1滿足執行的語句 }else if(條件2){條件2滿足執行的語句}... else{ 都不滿足執行的語句}
代碼示例:
int main() { int score = 0; cout << "請輸入考試分數:" << endl; cin >> score; if (score > 600) { cout << "我考上了一本大學" << endl; } else { cout << "我未考上一本大學" << endl; } return 0; }
嵌套if語句:在if語句中,可以嵌套使用if語句,達到更精確的條件判斷
作用: 通過三目運算符實現簡單的判斷
語法:表達式1 ? 表達式2 :表達式3
解釋:
如果表達式1的值為真,執行表達式2,并返回表達式2的結果;
如果表達式1的值為假,執行表達式3,并返回表達式3的結果。
代碼示例:
int main() { int a = 10; int b = 20; int c = 0; c = a > b ? a : b; cout << "c = " << c << endl; //C++中三目運算符返回的是變量,可以繼續賦值 (a > b ? a : b) = 100; cout << "a = " << a << endl; cout << "b = " << b << endl; cout << "c = " << c << endl; return 0; }
總結:和if語句比較,三目運算符優點是短小整潔,缺點是如果用嵌套,結構不清晰
作用: 執行多條件分支語句
語法:
switch(表達式) { case 結果1:執行語句;break; case 結果2:執行語句;break; ... default:執行語句;break; }
代碼示例:
int main() { //請給電影評分 //10 ~ 9 經典 // 8 ~ 7 非常好 // 6 ~ 5 一般 // 5分以下 爛片 int score = 0; cout << "請給電影打分" << endl; cin >> score; switch (score) { case 10: case 9: cout << "經典" << endl; break; case 8: cout << "非常好" << endl; break; case 7: case 6: cout << "一般" << endl; break; default: cout << "爛片" << endl; break; } return 0; }
注意1:switch語句中表達式類型只能是整型或者字符型
注意2:case里如果沒有break,那么程序會一直向下執行
總結:與if語句比,對于多條件判斷時,switch的結構清晰,執行效率高,缺點是switch不可以判斷區間
作用: 滿足循環條件,執行循環語句
語法: while(循環條件){ 循環語句 }
解釋:只要循環條件的結果為真,就執行循環語句
示例:
int main() { int num = 0; while (num < 10) { cout << "num = " << num << endl; num++; } return 0; }
注意:在執行循環語句時候,程序必須提供跳出循環的出口,否則出現死循環
作用: 滿足循環條件,執行循環語句
語法: do{ 循環語句 } while(循環條件);
注意: 與while的區別在于do…while會先執行一次循環語句,再判斷循環條件
代碼示例:
int main() { int num = 0; do { cout << num << endl; num++; } while (num < 10); return 0; }
總結:與while循環區別在于,do…while先執行一次循環語句,再判斷循環條件
作用: 滿足循環條件,執行循環語句
語法: for(起始表達式;條件表達式;末尾循環體) { 循環語句; }
代碼示例:
int main() { for (int i = 0; i < 10; i++) { cout << i << endl; } return 0; }
詳解:
注意:for循環中的表達式,要用分號進行分隔
總結:while , do…while, for都是開發中常用的循環語句,for循環結構比較清晰,比較常用
作用: 用于跳出選擇結構或者循環結構
break使用的時機:
出現在switch條件語句中,作用是終止case并跳出switch
出現在循環語句中,作用是跳出當前的循環語句
出現在嵌套循環中,跳出最近的內層循環語句
代碼示例:
int main() { //1、在switch 語句中使用break cout << "請選擇您挑戰副本的難度:" << endl; cout << "1、普通" << endl; cout << "2、中等" << endl; cout << "3、困難" << endl; int num = 0; cin >> num; switch (num) { case 1: cout << "您選擇的是普通難度" << endl; break; case 2: cout << "您選擇的是中等難度" << endl; break; case 3: cout << "您選擇的是困難難度" << endl; break; } return 0; }
作用: 在循環語句中,跳過本次循環中余下尚未執行的語句,繼續執行下一次循環
代碼示例:
int main() { for (int i = 0; i < 100; i++) { if (i % 2 == 0) { continue; } cout << i << endl; } return 0; }
注意:continue并沒有使整個循環終止,而break會跳出循環
作用: 可以無條件跳轉語句
語法: goto 標記;
解釋: 如果標記的名稱存在,執行到goto語句時,會跳轉到標記的位置
代碼示例:
int main() { cout << "1" << endl; goto FLAG; cout << "2" << endl; cout << "3" << endl; cout << "4" << endl; FLAG: cout << "5" << endl; return 0; }
注意:在程序中不建議使用goto語句,以免造成程序流程混亂
以上就是“C++的程序流程控制實例分析”這篇文章的所有內容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。