程序流程控制
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
void main()
{
int year; cout<<"请输入年份数字:";
cin>>year; cout<<"公元"<<year; if (year%100)//不能被100整除,相当于year%100<>0
if(year%4)//不能被4整除 cout<<" 年不是闰年。"<<endl;
else cout<<" 年是闰年。"<<endl;
将多条相关语句组合在一起,放在{ }中,就 形成了复合语句。右边的}后不必再加上分 号。
[Return]
4.2 程序的执行流程
程序的执行流程分:顺序流程、分支流程 和循环流程。
顺序流程就是按语句的顺序一条一条地向 下执行。 [Return]
4.3 分支流程
在程序中加进一个判断条件,根据条件的 不同值来确定执行不同的操作。就构成分 支流程。参见P.51图4.1。
cout<<"Monday"<<endl;break; case 2:
cout<<"Tuesday"<<endl;break; case 3:
cout<<"Wednesday"<<endl;break; case 4:
cout<<"Thusday"<<endl;break; case 5:
cout<<"Friday"<<endl;break; case 6:
用do…while编程求“水仙花数”
#include <iostream.h>
void main()
{ int i=100,a,b,c;//从100开始逐个试到999为止
do
{ a=i%10;//求得个位数 b=( (i-a) % 100 ) / 10;//求得十位数 c=( i-a-b*10 ) /100;//求得百位数 if( i == a*a*a+b*b*b+c*c*c )//若找到水仙花数则输出
#include <iostream.h>
void main() {
int i=100,a,b,c;//从100开始逐个试到999为止 while(i<1000) {
a=i%10;//求得个位数 b=( (i-a) % 100 ) / 10;//求得十位数 c=( i-a-b*10 ) /100;//求得百位数 if( i == a*a*a+b*b*b+c*c*c )//若找到水仙花数则输出
cout<<c<<"^3 +"<<b<<"^3 +"<<a<<"^3 = "<<i<<endl;
i++;
}while(i<1000);
}
[return]
4.4.3 for循环
一般形式为: for(表达式一;表达式二;表达式三)循环体语句 for后的表达式可以缺少一个或数个,但分号不
可缺 一般在循环次数已知时使用for循环较方便 三种循环方式在大多数情况下可互换
分支流程有if语句和switch语句。当if…else 嵌套时,else总是和最近的一条if语句相匹 配。【例一】【例二】
[Return]
例一: 闰年是指年份能被4整除的那些年,但不包括年份能被100整除 而不能被400整除的年。编写一个程序,判断某一年是否为闰年。
#include<iostream.h>
cout<<c<<"^3 +"<<b<<"^3 +"<<a<<"^3 = "<<i<<endl; i++; } }
[return]
4.4.2 do…while语句
一般形式为:
do循环体语句while(条件表达式); 参见图4.5
先执行循环体语句,然后再判断条件表达 式是否成立,因此循环体至少执行一次, 这是与while最大的不同之处。【例】 [return]
【例】
[return]
用for循环编程求“水仙花数”
#include <iostream.h>
void main() {
int a,b,c;//从100开始逐个试到999为止 for( int i=100;i<1000;i++) {
a=i%10;//求得个位数 b=( (i-a) % 100 ) / 10;//求得十位数 c=( i-a-b*10 ) /100;//求得百位数 if( i == a*a*a+b*b*b+c*c*c )//若找到水仙花数则输出
cout<<"Satday"<<endl;break; default:
cout<<"表示星期的数字必须在0-6之间"<<endl;break; } }
[return]
4.4 循环流程
循环流程提供重复处理的能力。 4.4.1 while语句 4.4.2 do…while语句 4.4.3 for循环
#include<iostream.h> void main() {
int weekday; cout<<"请输入星期的阿拉伯数字(0-6,星期天为0):"; cin>>weekday;
switch (weekday) { case 0:
cout<<"Sunday"<<endl;break; case 1:
else//能被100整除 Байду номын сангаасf(year%400)//不能被400整除 cout<<" 年不是闰年。"<<endl;
else cout<<" 年是闰年。"<<endl;
}
[return]
例二:编写一个程序,将用户输入的数字(0-6)转换成 相应的星期值输出。如用户输入3,则程序输出
Wednesday,用户输入0,则输出Sunday。
[Return]
4.4.1 while语句
一般形式为: while(条件表达式)循环体语句。参见图4.2 当条件表达式永真时,必须在语句中用
break语句跳出循环,否则陷入死循环。 若条件表达式一开始时就不成立,则循环
体语句一次也不执行。【例】 [return]
用while循环编程求“水仙花数”
第4章 程序流程控制
C++控制流程的语句,包括分支、循环和跳 转语句,通过各种控制语句的串接和嵌套,可以 组合出丰富的程序功能。
4.1 复合语句 4.2 程序的执行流程 4.3 分支流程 4.4 循环流程 4.5 设计举例 4.6 其他控制语句
[Return]
4.1 复合语句
常用的语句有:说明和定义(声明)语句、 表达式语句、流程控制语句和异常处理语 句。
{
int year; cout<<"请输入年份数字:";
cin>>year; cout<<"公元"<<year; if (year%100)//不能被100整除,相当于year%100<>0
if(year%4)//不能被4整除 cout<<" 年不是闰年。"<<endl;
else cout<<" 年是闰年。"<<endl;
将多条相关语句组合在一起,放在{ }中,就 形成了复合语句。右边的}后不必再加上分 号。
[Return]
4.2 程序的执行流程
程序的执行流程分:顺序流程、分支流程 和循环流程。
顺序流程就是按语句的顺序一条一条地向 下执行。 [Return]
4.3 分支流程
在程序中加进一个判断条件,根据条件的 不同值来确定执行不同的操作。就构成分 支流程。参见P.51图4.1。
cout<<"Monday"<<endl;break; case 2:
cout<<"Tuesday"<<endl;break; case 3:
cout<<"Wednesday"<<endl;break; case 4:
cout<<"Thusday"<<endl;break; case 5:
cout<<"Friday"<<endl;break; case 6:
用do…while编程求“水仙花数”
#include <iostream.h>
void main()
{ int i=100,a,b,c;//从100开始逐个试到999为止
do
{ a=i%10;//求得个位数 b=( (i-a) % 100 ) / 10;//求得十位数 c=( i-a-b*10 ) /100;//求得百位数 if( i == a*a*a+b*b*b+c*c*c )//若找到水仙花数则输出
#include <iostream.h>
void main() {
int i=100,a,b,c;//从100开始逐个试到999为止 while(i<1000) {
a=i%10;//求得个位数 b=( (i-a) % 100 ) / 10;//求得十位数 c=( i-a-b*10 ) /100;//求得百位数 if( i == a*a*a+b*b*b+c*c*c )//若找到水仙花数则输出
cout<<c<<"^3 +"<<b<<"^3 +"<<a<<"^3 = "<<i<<endl;
i++;
}while(i<1000);
}
[return]
4.4.3 for循环
一般形式为: for(表达式一;表达式二;表达式三)循环体语句 for后的表达式可以缺少一个或数个,但分号不
可缺 一般在循环次数已知时使用for循环较方便 三种循环方式在大多数情况下可互换
分支流程有if语句和switch语句。当if…else 嵌套时,else总是和最近的一条if语句相匹 配。【例一】【例二】
[Return]
例一: 闰年是指年份能被4整除的那些年,但不包括年份能被100整除 而不能被400整除的年。编写一个程序,判断某一年是否为闰年。
#include<iostream.h>
cout<<c<<"^3 +"<<b<<"^3 +"<<a<<"^3 = "<<i<<endl; i++; } }
[return]
4.4.2 do…while语句
一般形式为:
do循环体语句while(条件表达式); 参见图4.5
先执行循环体语句,然后再判断条件表达 式是否成立,因此循环体至少执行一次, 这是与while最大的不同之处。【例】 [return]
【例】
[return]
用for循环编程求“水仙花数”
#include <iostream.h>
void main() {
int a,b,c;//从100开始逐个试到999为止 for( int i=100;i<1000;i++) {
a=i%10;//求得个位数 b=( (i-a) % 100 ) / 10;//求得十位数 c=( i-a-b*10 ) /100;//求得百位数 if( i == a*a*a+b*b*b+c*c*c )//若找到水仙花数则输出
cout<<"Satday"<<endl;break; default:
cout<<"表示星期的数字必须在0-6之间"<<endl;break; } }
[return]
4.4 循环流程
循环流程提供重复处理的能力。 4.4.1 while语句 4.4.2 do…while语句 4.4.3 for循环
#include<iostream.h> void main() {
int weekday; cout<<"请输入星期的阿拉伯数字(0-6,星期天为0):"; cin>>weekday;
switch (weekday) { case 0:
cout<<"Sunday"<<endl;break; case 1:
else//能被100整除 Байду номын сангаасf(year%400)//不能被400整除 cout<<" 年不是闰年。"<<endl;
else cout<<" 年是闰年。"<<endl;
}
[return]
例二:编写一个程序,将用户输入的数字(0-6)转换成 相应的星期值输出。如用户输入3,则程序输出
Wednesday,用户输入0,则输出Sunday。
[Return]
4.4.1 while语句
一般形式为: while(条件表达式)循环体语句。参见图4.2 当条件表达式永真时,必须在语句中用
break语句跳出循环,否则陷入死循环。 若条件表达式一开始时就不成立,则循环
体语句一次也不执行。【例】 [return]
用while循环编程求“水仙花数”
第4章 程序流程控制
C++控制流程的语句,包括分支、循环和跳 转语句,通过各种控制语句的串接和嵌套,可以 组合出丰富的程序功能。
4.1 复合语句 4.2 程序的执行流程 4.3 分支流程 4.4 循环流程 4.5 设计举例 4.6 其他控制语句
[Return]
4.1 复合语句
常用的语句有:说明和定义(声明)语句、 表达式语句、流程控制语句和异常处理语 句。