C + + 程序的流程控制

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
}
此例题结束!
3.2.3 if多分支结构
格式:if (条件1) 语句1 else if (条件2) 语句2 else if (条件3) 语句3 … else if (条件n) 语句n 〖else 语句n+1〗 原理:首先检测条件1,若满足则执行语句1; 否则检测条件2,若满足则执行语句2;否则 检测条件3,若满足则执行语句3……如果所 有的条件都不满足,则执行最后一个else后 的语句(语句n+1),若没有该语句则什么 也不做,如图。
返回
3.3 循环结构
for循环 3.3.2 while循环 3.3.3 do…while循环 3.3.4 循环结构的特殊控制:
break和continue的使用
3.3.1
3.3.1 for循环
for语句的格式: for(循环初始化;循环条件;循环 参数调整)循环体 其中的循环条件应当是一个逻辑 表达式,而循环初始化和循环 参数调整都应当是具有副作用 的表达式,其中循环参数还应 当是一个能够影响循环条件的 表达式。 说明:1、括号内的三项都可以省 略,但分号不能省略。 2、循环条件如果省略,循环将无 终止的进行下去。

3.4.1 goto语句
利用goto语句可以无条件地转移到指定标号处。 标号定义格式: 标号 :语句语句 转移到指定标号的格式: goto标号:

3.4.2 return语句
return语句用于结束函数的运行并返回到调用处,其格式是: return〖表达式〗; 对于无返回值的函数,即说明为void F(…)的函数(F为任意的函数 名),可使用return;结束函数运行(return后无表达式)。 首页 结束
谢谢使用!



1、整型表达式处如果不是整 型,则它的值将被自动转换成 整型。 2、整型常量表达式是指在编 译时可确定其值的整型表达式, 通常就是一个整型常量。如果 表达式的类型不是整型,将被 自动转换为整型。 4、语句序列可以是空的,即 其中一个语句也没有。


3、所有语句序列按其排列顺 序相互衔接,而case的作用只 是标明一个入口以及转入该入 口的条件。一旦从某个入口进 入一个语句序列,就从该语句 序列开始顺序执行,直到以下 所有语句序列执行完毕时为止。 5、break语句的作用是提前结 束switch语句的执行。如果每 个语句序列的最后一个语句都 是break,则这样的switch多 分支结构可以用等效的if多分 支结构代替。
成星期输出
源程序:
#include<iostream.h> void main(void) { int day; cin>>day; switch(day) { case 0: cout<<"Sunday"<<endl; break;
继续
例4:输入一个0~6的整数,转换
成星期输出
case 1: cout<<"Monday"<<endl; break; case 2: cout<<"Tuesday"<<endl; break; case 3: cout<<"Wednesday"<<endl; break; case 4: cout<<"Thursday"<<endl; break; case 5: cout<<"Friday"<<endl;
此例题结束!
3.3.4 循环结构的特殊控制: break和continue的使用
1、break语句
使程序从循环和switch语句内跳出,继续 执行逻辑上的下一条语句。 break语句不能用在 别处.
2、continue语句
结束本次循环,接着开始判断决定是否继续 执行下一次循环。
3.4 其他流程控制
继续
例6:
do{
i++; a++; }while(i<3); i++; } cout<<a<<","<<i<<endl; }
此例题结束!
例7:求100~200之间不能被3 整除的数
源程序:
#include<iostream.h> void main() { for(n=100;n<=200;n++) { if(n%3!=0) printf("%d",n); } }
例:
例3:输入一个0~100分范围内的一
个成绩,显示相应的等级:
90~100——优;80~89——良;70~79——中; 60~69——及格;60分以下——不及格。 源程序:#include<iostream.h> void main() { float score; cout<<"请输入成绩:"; cin>>score;
do…while语句的一般格式: do循环体while(循环条件) 由于这种结构先执行 后判断,因此其循环体至 少执行一次。
例:循环结构的嵌套
循环结构与选择结构 相互嵌套
例6:
源程序:
#include<iostream.h> void main() { int i(1),a(0); for(;i<=5;i++) {
1、 顺序结构
顺序结构—— 通过安排顺序来决定 程序流程的程序结构。 如图:由于 “语句1”在“语句2” 的前面因此先执行 “语句1”,后执行 “语句2”。
2、条件分支结构和循环结构
条件分支结构
条件分支控制就是 指由特定的条件执行哪 个语句的程序结构。 条件分支结构可进 一步分为单分支结构和 多分支结构,在C + + 中用if语句或switch语 句实现。
例:来自百度文库
例1:输入一个年份判断是否闰年
源程序:
#include<iostream.h> void main(void) { int year; bool IsLeapYear; cout<<"Enter the year:";
继续
例1:输入一个年份判断是否闰年
cin>>year; IsLeapYear = ((year %4 = = 0 && year %100! = 0)||(year %400 = = 0)); if (IsLeapYear) cout<<year<<"is a leap year"<<endl; else cout<<year<<"is not a leap year"<<endl;
循环结构
循环控制就是指由特 定的条件决定某个语句重 复执行次数的控制方式。 循环结构还可以进一 步分为先判断后执行结构 和先执行后判断结构。在 C + +中用while语句、 for语句和do…while语 句实现。
3.2 条件分支结构
3.2.1 3.2.2 3.2.3 3.2.4 结构
此例题结束!
3.3.2 while循环
while语句的格式: while(循环条件)循环体 由于这种结构先判断 后执行,因此如果一开始 循环条件就不成立的话, 起循环体就一次也不执行。 While语句更具一般性, 一切用for语句实现的循 环也可以用while语句实 现。
3.3.3 do…while循环
此例题结束!
3.2.4 switch语句和switch 多分支语句
switch语句的格式: switch(整型表达式){ case整型表达式1:语句序列1 case整型表达式2:语句序列2 … case整型表达式n:语句序列n 〖default:语句序列n+1〗 }
例:
注意事项
例4:输入一个0~6的整数,转换
例:
例2: 比较两个数的大小
源程序:
#include<iostream.h> void main () { int x,y; cout<<"Enter x and y :"; cin>>x>>y;
继续
例2: 比较两个数的大小
if(x! =y) if(x>y) cout<<"x>y"<<endl; else cout<<"x<y"<<endl; else cout<<"x=y"<<endl;

if 语句 if 语句的嵌套 if 多分支结构 switch 语句和 switch多分支
3.2.1 If 语句

If 语句
格式:if(条件) 语句 1 else 语句 2 由格式可以看出,“else 语句 2”部 分可以没有。 格式含义是:如果条件成立就 执行“语句1”,否则就执行else后 的“语句2”,如图1所示;如果if语 句中不包含“else语句2”部分,则 在条件不成立时什么也不做,如图2。 (其中语句1和语句2不仅可以是一 条语句,而且可以是复合语句)。

例5:输入一个整数,求出它的 所有因子
源程序:
#include<iostream.h> void main(void) { int n,k; cout<<"Enter a positive integer:";
继续
例5:输入一个整数,求出它的 所有因子
cin>>n; cout<<"Number "<<n<<" Factors"; for(k=1;k<=n;k++) if(n%k==0) cout<<k<<" "; cout<<endl; }
继续
例4:输入一个0~6的整数,转换
成星期输出
break;
case 6: cout<<"Saturday"<<endl; break; default: cout<<"Day out of range Sunday . . . Saturday"<<endl; }
}
此例题结束!
关于switch多分支结构,应注意 以下几点:
此例题结束!
3.2.2 if 语句的嵌套
if 语句格式中的“语句1”和“语句2”本身也可以 是 if 语句,从而构成嵌套的 if 语句。 格式:if (条件 1) if (条件 2) 语句 1 else 语句2 else (条件 3) 语句3 注意:语句1、2、3、4可以是复合语句;每层的if 要与 else 配对,如果省略某一个 else ,便要用{ }括起该 层的 if 语句来确定层次关系。
继续
例3:输入一个0~100分范围内的一
个成绩,显示相应的等级:
if(score<0 || score>100) cout<<"成绩必 须在0~100之间!"; else if(score<60) cout<<"不及格"<<endl; else if(score<70) cout<<"及格"<<endl; else if(score<80) cout<<"中"<<endl; else if(score<90) cout<<"良"<<endl; else cout<<"优"<<endl; }
C + + 程序的流程控制
3.1 3.2 3.3 3.4 流程控制与程序结构 条件分支结构 循环结构 其他流程控制
3.1 流程控制与程序结构
流程控制方式中三种最基本的:顺序控 制、条件分支控制和循环控制。 每一种控制都有赖于一种特定的程序 结构来实现,因此也就有三种基本程序结构: 顺序结构、条件分支结构和循环结构。
相关文档
最新文档