- 1、本文档共66页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言讲义第03章_控制语句
第三章 控制语句 ;主要内容;控制语句;3.1 if…else语句;形式1:
if(表达式)
语句
功能:这种形式的语句无else部分,它的功能是首先对表达式进行求解,若表达式的值为非0,则执行语句;若表达式的值为0,则该语句不起作用,不执行,而继续执行if语句下面的语句。
例如:
if(ab) printf(the max is %d ,a);
当ab为真时,打印输出a的值,否则什么也不执行。
;形式2:if (表达式)
语句1
else
语句2
功能:首先对表达式进行求解,若表达式的值为非0,则执行语句1,否则执行语句2。
例如:
if (ab)
printf(the max is %d ,a);
else
printf(the max is %d ,b);
当ab为真时,打印输出a的值,否则打印输出b的值。;形式3:
if(表达式1) 语句1
else if(表达式2) 语句2
else if(表达式3) 语句3
…
else if(表达式n) 语句n
else 语句n+1;功能:依次判断表达式的值,当出现某个值为非0时, 则执行其对应的语句。然后跳到整个if语句之外继续执行程序。 如果所有的表达式均为假,则执行语句n+1。 然后继续执行后续程序。前二种形式的if…else语句一般都用于两个分支的情况。 当有多个分支选择时,可采用第3种形式if…else语句。
例如:
if(grade=80) printf(A);
else if(grade=70) printf(B);
else if(grade=60) printf(C);
else printf(D);
;注意事项:
1、在if 后面的表达式,其类型可以是任意的(整形、实型、字符型、指针型), C语言在判断时只要非0,就认为是真,按真处理,只有0时才认为是假,按假处理。因此,而不仅仅限于逻辑表达式或关系表达式。
;2、C语句必须在最后出现分号,分号是语句中不可缺少的一部分,因此if和else后面的语句都必须有分号。
例如:
if(ab)
printf(the max is %d ,a);
else
printf(the max is %d ,b);;3.1 if…else语句注意事项;例3.1 接收任意输入的两个实数,按从大到小的顺序输出。
程序如下:;例3.3 要求判别键盘输入字符的类别。
可以根据输入字符的ASCII码来判别类型。由ASCII码表可知ASCII值小于32的为控制字符。 在‘0’和‘9’之间的为数字,在’A’和’Z’之间为大写字母, 在’a’和’z’之间为小写字母,其余则为其它字符。 这是一个多分支选择的问题,可采用第3种形式的.
程序如下: ;If 语句嵌套:在一个if语句中又包含一个或多个if语句。
一般形式:;注意事项:
if ~ else 配对原则:缺省{ }时,else总是和它上面离它最近的未配对的if配对;例: if (a==b)
if(b==c)
printf(“a==b==c”);
else
printf(“a!=b”);;例 考虑下面程序输出结果:
main()
{ int x=100,a=10,b=20;
int v1=5,v2=0;
if(ab)
if(b!=15)
if(!v1)
x=1;
else
if(!v2) x=10;
x=-1;
printf(“%d”,x);
} /*ifz.c */;
例 3.5有一函数如下:
y=
写一程序,输入x,输出y的值。
程序如下:;条件运算符 ?:
条件运算符为?和:,它是一个三目运算符,即有三个参与运算的量。由条件运算符组成条件表达式的一般形式为:
表达式1? 表达式2: 表达式3
功能:如果表达式1的值为非0(真),则以表达式2 的值作为条件表达式的值,否则以表达式3的值作为整个条件表达式的值。 条件表达式通常用于赋值语句之中。;例如:max=(ab)?a:b 它等价于:if(ab) m
文档评论(0)