




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
制作者:王甜甜C++的控制語句學習內容C++語句概述C++程序的三種基本結構順序結構分支結構循環(huán)結構限定轉向語句breakcontinueC++語句概述語句(statement)是程序中最小的可執(zhí)行單位。一條語句可以完成一種基本操作,若干條語句組合在一起就能實現(xiàn)某種特定的功能。C++中語句可以分為以下三種形式:1、單一語句在任何一個表達式后面加上分號(;)就構成了一條簡單的C++語句例如:c=a+b;a>b?a:b;cout<<“HelloC++”<<endl;C++語句概述2.空語句僅由單個分號構成的語句,即;空語句不進行任何操作。該語句被用在從語法上需要一條語句,但實際上卻又不進行任何操作的地方。3.復合語句復合語句是用一對花括號{}括起來的語句塊。復合語句在語法上等效于一個單一語句。使用復合語句應注意:(1)
花括號必須配對使用;(2)花括號外不要加分號C++程序的三種基本結構順序結構分支結構循環(huán)結構順序結構BA程序按照語句的書寫順序依次執(zhí)行,語句在前的先執(zhí)行,語句在后的后執(zhí)行,只能滿足設計簡單程序的要求。
分支結構BNAY條件P在分支結構中,程序根據(jù)判斷條件是否成立,來選擇執(zhí)行不同的程序段。也就是說,這種程序結構,能有選擇地執(zhí)行程序中的不同程序段。
循環(huán)結構在循環(huán)結構中,程序根據(jù)判斷條件是否成立,來決定是否重復執(zhí)行某個程序段。
條件PA當型循環(huán)直到型循環(huán)真假假條件PA假真if語句if語句是最常用的一種分支語句,也稱為條件語句。if語句有三種形式:單分支if
語句、雙分支if語句多分支if語句單分支if語句語法:if(表達式)語句執(zhí)行過程先計算關鍵字if后面的表達式的值,若為真,則執(zhí)行if后的“語句”部分,否則跳過該“語句”部分。不管是否執(zhí)行“語句”部分,最后都要接著“語句”部分的后面,繼續(xù)執(zhí)行程序的其它部分。真假表達式語句單分支if語句說明:括號不能省略。在if(表達式)后不能加分號“;”。關鍵字if的后面的表達式可以是任意的表達式,只要表達式的值為非0,即當真值處理,否則當假值處理。if語句的內嵌語句可以是單一語句,也可以是復合語句。盡量使if語句的內嵌語句比if語句縮進這是良好編程書寫風格。例子:intx=0,y=2;
if(x==0)y++;
cout<<x<<y;雙分支if語句語法格式:
if(表達式)
語句塊1
else
語句塊2
執(zhí)行過程:先判斷表達式的值,若為真,則執(zhí)行語句塊1,否則執(zhí)行語句塊2。不管程序執(zhí)行語句塊1還是執(zhí)行語句塊2,最后都要跳到語句塊2的后面接著執(zhí)行程序中后面的語句。真假表達式語句塊1語句塊2雙分支if語句說明:語句塊1、語句塊2既可以是單一語句也可以是用{}括起來的復合語句。else子句必須與if子句配對使用,不能單獨使用else子句必須處在if子句的后面,且else語句總是和離它最近的前面未配對的if語句配對。例子:輸入一個年號,判斷是否為閏年,如果是則輸出“yes”,否則輸出“Not”。分析:只要滿足下列兩個條件之一者,即是閏年。①年號能被4整除,但要排除同時能被100整除;②年號能被400整除。#include<iostream.h>voidmain(){inty;
cout<<"輸入一個年號:";
cin>>y;if((y%4==0&&y%100!=0)||(y%400==0))
cout<<"Yes";else
cout<<"Not";
cout<<"\n程序運行結束";}多分支if語句一般形式為:if(表達式1)
語句1elseif(表達式2)
語句2elseif(表達式3)
語句3 ………………elseif(表達式N)
語句Nelse
語塊N+1說明:在if語句嵌套中else與if配對關系,else與離它最近的if語句相匹配。真真真假假假表達式1表達式2語句1語句2語句3語句4多分支if語句#include<iostream.h>voidmain(){ floatscore;
cout<<"Inputscore(0~100):";
cin>>score;
if(score>=90)
cout<<"Excellent!"; elseif(score>=80)
cout<<"Good!"; elseif(score>=70)
cout<<"Right!"; elseif(score>=60)
cout<<"Pass!";else
cout<<"Failed!";}例子:輸入學生的成績score,按分數(shù)輸出其等級:score≥90為優(yōu),90>score≥80為良,80>score≥70為中等,70>score≥60為及格,score<60為不及格。switch語句一般形式為:
switch(表達式){
case常數(shù)1:
語句序列1;
case常數(shù)2:
語句序列2;
…………
default:
語句序列3;
}執(zhí)行過程:說明:1、表達式可以是整形、字符型、枚舉型2、case后的常量類型=switch中表達式類型3、常數(shù)1-常數(shù)n必須互不相同且每一常數(shù)后面要有冒號:4、各case子句和default子句的次序可任意5、default可以沒有,但最好不省略6、如果要使每個case處相當于一種if(s)else的效果,必須在其語句組最后加上break語句。7、各case子句后面必須是常數(shù),而不能是變量或表達式switch語句#include<iostream.h>voidmain(){floatscore;
inta;
cout<<"Inputscore(0~100):";
cin>>score;a=score/10;
switch(a){case0:case9:cout<<"Excellent!";break;case8:cout<<"Good!";break;case7:cout<<"Right!";break;case6:cout<<"Pass!";break;
default:cout<<"Failed!";}}例子:輸入學生的成績score,按分數(shù)輸出其等級:score≥90為優(yōu),90>score≥80為良,80>score≥70為中等,70>score≥60為及格,score<60為不及格。switch和else-if的比較else-if比switch的條件控制更強大一些else-if可以依照各種邏輯運算的結果進行流程控制switch只能進行==判斷,并且只能是整數(shù)判斷switch比else-if更清晰兩者都要盡量避免用得過多、過長,尤其不要嵌套得太多它們大大增加程序的分支,使邏輯關系顯得混亂,不易維護,易出錯循環(huán)語句C++提供了三種循環(huán)結構:while循環(huán)語句、do-while循環(huán)語句for循環(huán)語句while語句語法形式:while(表達式){循環(huán)體語句}執(zhí)行過程:首先判斷while后面的表達式的值,若表達式的值為真,則執(zhí)行while的內嵌語句(即循環(huán)體)一次;然后重復以上過程,直到表達式的值為假時,才退出循環(huán)接著執(zhí)行循環(huán)體語句后面的其它程序語句循環(huán)體語句表達式FTwhilewhile語句例子:求#include<iostream.h>#include<iostream.h>voidmain(){int
i,n;n=0; i=1;
while(i<=100) {n=n+i; i++;}
cout<<"n="<<n<<endl;}do-while循環(huán)語句語法形式:do{循環(huán)體語句}while(表達式);執(zhí)行過程:首先執(zhí)行do-while的內嵌語句(循環(huán)體語句)一次然后再判斷while后面的表達式的值,若表達式的值為真,則重復執(zhí)行do-while的內嵌語句,如此反復,直到表達式的值為假時,循環(huán)結束,執(zhí)行while后面的語句。statements表達式FTdo/whiledo-while循環(huán)語句例子:求#include<iostream.h>voidmain(){int
i,n; n=0;i=1;do{n=n+i; i++;}
while(i<=100);
cout<<"n="<<n<<endl;}while語句和do-while在循環(huán)體相同的情況下while語句和do-while語句的功能基本相同二者的區(qū)別在于:while:先驗證條件,再執(zhí)行語句do/while:先執(zhí)行語句,再驗證條件當循環(huán)條件一開始就為假時,do-while語句中的循環(huán)體至少會被執(zhí)行一次,而while語句則一次都不執(zhí)行。
for循環(huán)語句語法形式:for(表達式1;表達式2;表達式3){循環(huán)體語句}說明:表達式1:初始化表達式表達式2:判斷條件表達式表達式3:修正表達式,循環(huán)參數(shù)調整循環(huán)體有多條語句時,要加{}表達式可缺省,但分號不能省,如
intn=1;for(;n<10;n++)變量可在表達式中聲明:
for(intn=1;n<10;n++)
等價于:while(表達式2){
語句;
表達式3;
}for循環(huán)語句執(zhí)行過程:①執(zhí)行for后面的表達式1;②執(zhí)行表達式2,若表達式2的值為真,則執(zhí)行for語句的內嵌語句(即循環(huán)體語句),然后執(zhí)行第③步,若為假,則循環(huán)結束,執(zhí)行第⑤步;③執(zhí)行表達式3;④返回繼續(xù)執(zhí)行第②步;⑤循環(huán)結束,執(zhí)行for語句的循環(huán)體下面的語句。表達式1
表達式2表達式3循環(huán)體語句TFfor循環(huán)語句例子:求#include<iostream.h>voidmain(){int
i,n;n=0;
for(i=1;i<=100;i++) n=n+i;
cout<<"n="<<n<<endl;}選擇三種循環(huán)的一般原則如果循環(huán)次數(shù)已知,用for如果循環(huán)次數(shù)未知,用while如果循環(huán)體至少要執(zhí)行一次,用do-while這只是“一般”原則,不是“原則”循環(huán)嵌套在一個循環(huán)的循環(huán)體中又包含另一個循環(huán)語句,稱為循環(huán)嵌套。C++的三種循環(huán)語句可以相互嵌套,構成循環(huán)嵌套。以下幾種都是合法的循環(huán)嵌套:
(1)for(;;) {…… for(;;) { } ……}(2)while(){……for(;;) {}do{…… }while();……}(3)do{…… for(;;) { }
……}while();循環(huán)嵌套在嵌套的各層循環(huán)體中,使用復合語句(即用一對大花括號將循環(huán)體語句括起來)保證邏輯上的正確性內層和外層循環(huán)控制變量不應同名,以免造成混亂嵌套的循環(huán)最好采用右縮進格式書寫,以保證層次的清晰性循環(huán)嵌套不能交叉,即在一個循環(huán)體內必須完整的包含著另一個循環(huán)限定轉向語句breakcontinuebreak語句語法形式:break;該語句只能用于兩種情況:(1)用在switch結構中,當某個case子句執(zhí)行完后,使用break語句跳出switch結構。(2)用在循環(huán)結構中,用break語句來結束循環(huán)。如果在嵌套循環(huán)中,break語句只能結束其所在的那層循環(huán)。假假真真break表達式1表達式2循環(huán)語句的下一條語句break語
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 分紅權轉讓合同范本
- 舊房整棟出售合同范本
- wenhua公司合伙合同范本
- 賣家賣貨合同范本模板
- 大理租院子合同范本
- 汽車抵款合同范本
- 提供租賃合同范本
- 煤氣安裝服務合同范本
- 過度安置房合同范本
- 文化墻彩繪合同范本
- 臨床營養(yǎng)學病例報告
- 危險作業(yè)票 安全作業(yè)票格式模板 動火登高煤氣受限空間作業(yè)票
- 水電工安全考試題及答案
- 2025至2030臨床前CRO治療行業(yè)發(fā)展趨勢分析與未來投資戰(zhàn)略咨詢研究報告
- 2025年浙江省中考數(shù)學試卷真題(含官方標準答案)
- 幼兒園物資報損管理制度
- 酒精戒斷綜合癥治療方案講課件
- 【9語安徽中考卷】2025年安徽省中考招生考試真題語文試卷(真題+答案)
- 工程造價培訓用課件
- 《人工智能概論-面向通識課程》全套教學課件
- 三區(qū)人才面試題及答案大全
評論
0/150
提交評論