第2章程序控制结构.ppt
文本预览下载声明
第2章 程序控制结构2.1 顺序结构 2.2 选择结构 2.3 循环结构 2.4 控制转向语句 2.5 程序实例 ;按照语句出现的先后顺序依次执行。;2.1.1 定义语句;2.1.2 表达式语句;2.1.3 复合语句;2.1.4 空语句;2.1.5 基本输入输出;1. 标准输入流cin;2. 标准输出流cout;表2.1 常用格式控制符;表2.1 常用格式控制符;【例2.1】 cout应用示例;【例2.2】 使用格式控制符输出数据;2.2 选择结构;2.2.1 if语句;;#include iostream
using namespace std;
int main()
{
int a,b,t;
cout请输入两个整数a,b:endl;
cinab;
if(ab)
{t=a;a=b;b=t;}
coutabendl;
return 0;
};2.if- else语句(双分支);【例2.4】输入一个年份,判断是否为闰年。;3.if- else if 语句(多分支);【例2.5】根据x的值,计算分段函数y的值。y的计算公式为:;#include iostream
#include cmath
using namespace std;
int main()
{
double x,y;
cout请输入x:;
cinx;
if(x0)
y=fabs(x);
else if(x10)
y=exp(x)*sin(x);
else if(x20)
y=pow(x,3);
else
y=(3+2*x)*log(x);
couty=yendl;
return 0;
};4.if语句的嵌套形式;(1) 为了增强程序的可读性,建议采用锯齿型的书写形式。
(2) if语句嵌套时,else子句总是与在它前面、距它最近、且尚未匹配的if配对。
(3)为明确匹配关系,避免匹配错误,建议将内嵌的if语句一律用“{ }”括起来。;【例2.6】从键盘上输入两个字符,比较其大小,输出大于、等于和小于的判断结果。;2.2.2 switch语句;有;【例2.7】将输入的百分制成绩按以下规定转换成相应的等级:;#include iostream
using namespace std;
int main()
{
float score;
cout请输入成绩:;
cinscore;
if(score=0 score=100)
switch(int(score)/10)
{
case 10:
case 9: coutscore分:优秀endl;break;
case 8: coutscore分:良好endl;break;
case 7: coutscore分:中等endl;break;
case 6: coutscore分:及格endl;break;
default:coutscore“分:不及格”endl;
}
else
cout输入数据有误!endl;
return 0;
};2.3 循环结构;【例2.8】求 1+2+3+……+100;【例2.9】求出满足不等式的最小n值:;2.3.2 do-while语句;【例2.10】 求自然数1~100之和,要求用do-while语句实现。;while(12)
cout”I like C++!”endl;
// 相当于一个空操作语句
do
cout”I like C++!”endl;
while(12);
// 输出一行文字信息;【例2.11】输入一个自然数,将该数的每一位数字按反序输出。例如:输入12345,输出54321。;;【例2.12】求自然数1~100之和,要求用for语句实现。;【例2.13】 一个小球从100米高处落下,每次落地后反弹回原高度的一半,再落下。求它在第10次落地时共经过多少米?第10次反弹多高?;#include iostream
#include iomanip
using namespace std;
int main()
{
float s=100.0,h=s/2;
for(int i=2;i=10;i++)
{
s=s+h*2;
h=h/2;
}
coutsetiosflags(ios::fixed)setprecision(3);
cout第10次落地时,共经过s米;反弹的高度是h米endl;
return 0;
};注意:;int i =1,sum=0;
f
显示全部