吉林大学 康辉 高级程序设计语言(一) 第四章_第1页
吉林大学 康辉 高级程序设计语言(一) 第四章_第2页
吉林大学 康辉 高级程序设计语言(一) 第四章_第3页
吉林大学 康辉 高级程序设计语言(一) 第四章_第4页
吉林大学 康辉 高级程序设计语言(一) 第四章_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

本文格式为Word版,下载可任意编辑——吉林大学康辉高级程序设计语言(一)第四章

第四章C语句及控制结构4.1C语句概述C语句可分为四类:1.空语句:;作用:循环体和转向点2.表达式语句表达式;功能:表达式求值如:1+3;a+b-c;

4.1C语句概述常用的表达式语句:a=3;b++;I=1,j=2,k=3;a+=2;t=a,a=b,b=t;I=3*5+6;

函数调用语句也属于表达式语句的一个特例,如:printf(“%d\n〞,5);ch=getchar();putchar(ch);

4.1C语句概述3.块(复合语句){语句组}例:{t=a;a=b;b=t;}4.控制语句:条件、循环

4.2关系运算符和关系表达式一、关系运算符(6种)(小于)=(小于或等于)(大于)=(大于或等于)==(等于)!=(不等于)

4.2关系运算符和关系表达式二、关系表达式关系表达式的值是一个规律值,即“真〞或“假〞。如:“5==3〞的值为“假〞,“63〞的值为“真〞.三、说明前4种关系运算符(,=,,=)的优先级一致,后两种也一致。且前4种的优先级高于后两种。C语言没有规律型数据,以整数1代表“真〞,以0代表“假〞。如:a=(53)结果将a置为1

4.3规律运算符和规律表达式一、规律运算符(3种):!规律非(一元运算符)规律与(二元运算符)||规律或(二元运算符)规律运算符的操作数为规律型量优先顺序如下:!(非)(与)||(或)

4.3规律运算符和规律表达式二、运算规则!a:若a为“真〞,则!a的值为“假〞,若a为“假〞,则!a的值为“真〞。ab:若a和b皆为“真〞,则ab的值为“真〞,否则为“假〞。

a||b:若a和b皆为“假〞,则a||b的值为“假〞,否则为“真〞。

三、规律表达式表达式的结果最终是由规律运算符运算的称为规律表达式.如:a=3,b=2,c=4,d=5则:(ab)(cd)值为1!(ab)(ab)||(cd)值为0值为1

4.3规律运算符和规律表达式四.四种运算符的优先级:!高算术运算符关系运算符||赋值运算符低例:a=532||84-!0

结果为1

4.3规律运算符和规律表达式五、说明1.将一个量作为规律量来判断其真假值时,将非0作为“真〞,将0作为“假〞。例如:3||030!3!0

的值是1(真)的值是0(假)的值是0(假)的值是1(真)

2.规律运算符的操作数,可以是任何类型的数据,系统最终以0和非0来判定它们的规律值是“真〞还是“假〞。如:′c′′d′的值是14!a||2的值是1

4.3规律运算符和规律表达式例:判别某年year是否为闰年,可用如下规律表达式来进行判断:(year%4==0year%100!=0)||year%400==0

非闰年的判断条件为:!(year%4==0year%100!=0)||year%400==0)(year%4!=0||year%100==0)year%400!=0(year%4||!(year%100))year%400

4.4条件分支C语言提供了三种形式的条件分支语句。一、简单ifif(表达式

)语句表达式if(ch=ach=z)putchar(ch);非0

这里语句也可以是块,如:

0

语句

if(ab){t=a;a=b;b=t;}假使写成if(ab)t=a;a=b;b=t;则完全不同。

4.4条件分支二、块ifif(表达式)语句1else语句2例:if(ab)printf(“%d〞,a);elseprintf(“%d〞,b);0非0

表达式语句2语句1

4.4条件分支三、if-else-if语句if(表达式1)语句1elseif(表达式2)语句2┆elseif(表达式n)语句nelse语句n+1表达式1非0

语句1

表达式2

非0

语句22

表达式3

非0

语句3

表达式n0语句n+1

非0

语句n

4.4条件分支例:将百分制成绩s1换为5分制成绩s2。if(s160)s2=1;elseif(s170)s2=2;elseif(s180)等价s2=3;elseif(s190)s2=4;elses2=5;if(s160)s2=1;elseif(s170)s2=2;elseif(s180)s2=3;elseif(s190)s2=4;elses2=5;

4.4条件分支在嵌套使用if语句时,应注意的一点是if和else的配对关系.原则:else只和其前面最靠近它的if配对.例:if(ab)if(bc)c=a;elsec=b;

尽管我们在书写程序时,让else和最外层的if对齐,但它实际上是和内层if配对的。

4.4条件分支假使要让其和最外层if配对,必需用块来显式地标界如下:if(ab){if(bc)c=a;}elsec=b;

4.4条件分支计算y=程序:main(){intx,y;scanf(“%d〞,x);if(x0)y=x-1;elseif(x=0)y=0;elsey=x+1;printf(“x=%d,y=%d〞,x,y);}

x-10x+1

(x0)(x=0)(x0)

4.4条件分支五、条件运算符?:(也叫三元运算符.)1.语法:表达式1?表达式2:表达式32.功能:假使表达式1的值是非0的,则其结果是表达式2的值,否则为表达式3的值.例1:printf(“maxis%d\n〞,(ab)?a:b);往往用条件表达式构成一个赋值语句例:ch=(ch=ach=z)?ch-a+A:ch;3.注意:?:的优先级仅比赋值运算符和逗号运算符高,故在和其它运算符混合使用时应

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论