资源描述:
《C语言(基本控制结构)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第2章C语言的基本控制结构2.3循环结构2.2选择结构2.1顺序结构2.1顺序结构顺序结构:按照语句的书写顺序依次执行每条语句。语句:三.表达式语句(操作语句)a=3a=3;一.流程控制语句二.函数调用语句:如printf(……);i=i+1i=i+1;i++;x+y;四.空语句;五.复合语句{z=x+y;t=z/100;printf(“%f”,t);}此处没有分号赋值运算符与赋值表达式赋值运算符:=右结合简单赋值运算:变量=表达式过程:计算、转换、赋值自反算术赋值运算(复合赋值运算)+=自反加赋值-=自反减赋值*=自反乘赋值/=
2、自反除赋值%=自反模赋值如:a+=3→a=a+3x*=y+8→x=x*(y+8)多重赋值运算a=(b=5)a=b=5a=5+(c=6)c的值为6,a的值为11,表达式的值为112.2选择结构选择结构是指根据某些数据的取值或计算结果选取不同操作的处理方式。选择结构的描述由两个基本部分组成,一是对选择条件的描述;二是对处理分支的描述。2.2.1关系运算与逻辑运算运算符功能>大于>=大于等于<小于<=小于等于==等于!=不等于高低优先级关系运算符左结合关系表达式a=b>c用关系运算符将两个表达式连接起来的式子优先级:算术关系赋值高——————
3、低a=(b>c)a==b32如:a=3,b=2,c=1则:(a>b)==cd=a>bd的值为1f=a>b>ca>b的值为11>c的值为0f的值为0值为1逻辑运算符&&、
4、
5、双目运算符,如a&&b,左结合&&、
6、
7、的优先级低于关系运算符,!高于算术运算符&&与,
8、
9、或,!非如:(!a)
10、
11、(a>b)!a
12、
13、a>b(a>b)&&(x>y)a>b&&x>y!单目运算符,如!a,右结合判断一个量是否为真时,非0为真,0为假逻辑表达式逻辑表达式的值
14、:1或0如:a=4,!a值为0a=4,b=5,a&&b值为1a
15、
16、b值为1!a
17、
18、b值为14&&0
19、
20、2值为1注意:不是所有的运算符都被执行如:a&&b&&ca
21、
22、b
23、
24、c如已知:a=1,b=2,c=3,d=4,m=1,n=1则:(m=a>b)&&(n=c>d)m=0,n=c>d不被执行,n=1例如:x>=0&&y++如果x小于0,将不计算y++。例如:x>=0
25、
26、y++如果x大于或等于0,将不计算y++注意:数学上的a≤x≤b不同于C中的a<=x<=b如:a=0,b=0.5,x=0.3正确表示:a<=x&&x<=b结果为1a<=x<=
27、b→1<=b→结果为02.2.2if语句if(<条件表达式>)<真分支语句>if(<条件表达式>)<真分支语句>else<假分支语句>if(3)printf(“OK”);if(‘a’)printf(“%d”,‘a’);说明:1.表达式结果非0即为真2.在每个分支语句后面有一分号3.if和else后面可以只含一个内嵌的操作语句,也可以是一个复合语句例1:P37分析整数绝对值的计算过程。#includemain(){intinput,output;printf(“Enterainteger:”);scanf(“%d”,
28、&input);if(input<0)/*判断input是否小于0*/output=-input;elseoutput=input;printf(“ABS(%d)=%d”,input,output);}例:输入3个整数,按由小到大顺序输出。#includevoidmain(){inta,b,c,t;scanf(“%d%d%d”,&a,&b,&c);if(a>b){t=a;a=b;b=t;}if(a>c){t=a;a=c;c=t;}if(b>c){t=b;b=c;c=t;}printf(“%d,%d,%d”,a,b,
29、c);}输入:371↙输出:1,3,7Y交换a、ba>bNY交换a、ca>cNY交换b、cb>cN#includemain(){intx,y;printf(“Enter2integers:”);scanf(“%d%d”,&x,&y);if(x>0){if(y>0)printf(“Iquadrant”);elseprintf(“VIquadrant”);}else{if(y>0)printf(“IIquadrant”);elseprintf(“IIIquadrant”);}}P38例2:输入坐标点,判
30、断该坐标点处于第几象限。内层嵌套的if语句内层嵌套的if语句1.输入坐标点x,y2.如果x>0且y>0第1象限否则第4象限3.否则:如果y>0第2象限否则第3象限例:当输入不同字符时,通过多分支选择结构,显