预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共69页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第3章程序控制结构主要内容【例3.1】输入的三条边a,b,c, 求三角形面积 area=s(s-a)(s-b)(s-c) ,其中s=(a+b+c)/2源程序清单: #include<iostream> usingnamespacestd; #include<cmath> voidmain() { floats,a,b,c,area; cin>>a>>b>>c; s=1.0/2*(a+b+c); area=sqrt(s*(s-a)*(s-b)*(s-c)); cout<<"area="<<area<<endl; }3.2选择结构程序设计3.2.1if语句的3种形式【例3.2】输入一个学生成绩,如果及格则输出“good!”,否则什么也不做。【例3.3】将两个整数a,b中的大数存入a中,小数存入b中。voidmain() { inta,b,temp; cin>>a>>b; if(a<b) { temp=a; a=b; b=temp; } cout<<"a="<<a<<","<<"b="<<b<<endl; }2.双分支选择结构【例3.4】输入一个英文字符,是字母则输出“YES!”,否则输出“NO!”。程序清单: #include<iostream> usingnamespacestd; voidmain() { charc; cin>>c; if(c>=’a’&&c<=’z’||c>=’A’&&c<=’Z’) cout<<"YES!"<<endl; else cout<<"NO!"endl; }程序流程多于两个分支称为多分支 多分支程序结构使用嵌套的if-else语句实现。只在else分支嵌套【例3.5】求如下所示分段函数的y值。程序清单:x=0程序清单:C语言不限制嵌套层数voidmain(){ ints1; chars2; cin>>s1; if(s1<60)s2=’E’; elseif(s1<70)s2=’D’; elseif(s1<80)s2=’C’; elseif(s1<90)s2=’B’; elses2=’A’; cout<<s2<<endl;}嵌套注意的一点是if和else的配对关系3.2.2条件运算符?:【例3.6】输入一个英文字母,判断是否为英文大写字母,若是大写字母直接输出,否则转换成大写字母输出。 #include<iostream> usingnamespacestd; voidmain() { charch; cin>>ch; ch=(ch>=’A’&&ch<=’Z’)?ch:(ch-32); cout<<ch<<endl; }3.2.3switch语句实现多分支选择结构3.2.3switch语句实现多分支选择结构【例3.7】输入i,根据i的值输出信息。break是C语言的一种语句,其功能是中断正在执行的语句。如果省略了break语句,则执行完某个语句组后,将继续执行其后边的语句组。【例3.8】case子句的入口表达式是字符常量的程序举例。【例3.9】将百分制成绩分段。voidmain() {ints; cin>>s; switch(s/10){ case0: case1: case2: case3: case4: case5:cout<<"E."<<endl;break; case6:cout<<"D."<<endl;break; case7:cout<<"C."<<endl;break; case8:cout<<"B."<<endl;break; case9: default:cout<<"A."<<endl; }}3.3循环结构程序设计构成循环的三要素【例3.10】设有变量i=0,1,2,3,4,要求输出i的5个值,每个数字间隔4个字符位下一行输出:“Weareoutoftheloop.”。程序清单:注意:【例3.11】求sum=1+2+3+……+100。将上例改成求任意10个实数的代数和,则可以将循环体改为:3.3.2直到循环程序结构【例3.12】用do-while循环语句改写1+2+…100【例3.13】while和do-while循环的比较。3.3.3次数循环程序结构for(表达式1;表达式2;表达式3)语句;【例3.14】将1+2+3+…+100改用for语句书写。for循环的多种表现形式:3.3.4循环嵌套与多重循环程序结构【例3.15】设计循环嵌套结构,计算百钱买百鸡问题。公鸡5元1只,母鸡3元1只,鸡雏1元3只,100元钱买100只鸡,有多少种买法?#include<iostream> usingnamespacestd; voidmain() { intx,y,z;//公鸡,母鸡,小鸡 for(x=1;x<=20;x++)//公鸡分别是1,2,…20只 { for(y=1;y<=33