if 语句格式
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
if 语句格式:(1)if (表达式)语句1
else 语句2
(2)if (表达式)语句1
注意:
(1)执行的方式为:判断if后表达式的值,若为非零值(真)则执行语句1,执行完后直接跳过else子句
往后执行(即不执行else子句的语句)。
(2)if 后有一个条件表达式且该表达式必须用小括号括起,else后不能有条件表达式。
(3)else不是一个单独的语句,它必须与if结合使用。(4)if 和else 后分别控制且只能控制一条语句,若要控制多条语句则必须用一对花括号{}将这些语句括
起使其构成一个复合语句。
{
int m=5;
if (m++>5) printf(“m=%d\n”,m);
else printf(“m=%d\n”,m--);
}
分析下列程序是否出错,若出错则分析错误的原因,否则写出输出结果:
1.{ int m=5;
if (m++>5)
else printf(“m=%d\n”,m);
}
2.{
int m=5;
if (m++>5) printf(“m=%d\n”,m);
printf(“m=%d\n”,m);
else printf(“m=%d\n”,m--);
}
3.
{
int m=5;
if (m++>5) printf(“m=%d\n”,m);
else printf(“m=%d\n”,m--);
printf(“m=%d\n”,m);
}
if语句的嵌套:是指在一个if 语句中又包含有完整的if 语句。
有3种形式:自己推理。
注意:在if 的嵌套中if 与else的结合不是以位置的缩进为
依据。else总是与与它最接近且在它上面的还没有与别的else 结合的if进行结合(必须是在同一语句中)。
在分析程序时应始终记住一点,即任何控制语句都只能控制一条语句(用{}括起来的多条语句共同组成一条复合语句,复合语句也是一条语句)。
例如:
如果天气很好,
我就到院子里去。
如果天气很冷,
我就坐在太阳下。
否则
我就坐在树荫下。
否则
我就待在屋内。
然后喝一些柠檬水。
对应的程序代码如下:
if (天气很好) {我就到院子里去;
if (天气很冷) 我就坐在太阳下;
else 我就坐在树荫下;
}
else 我就待在屋内;
喝一些柠檬水;
分析:
请分析下列程序的输出结果:
程序1:
main( )
{
int s,t,a,b;
scanf(“%d%d”,&a,&b);
s=1;t=1;
if(a>0) s=s+1;
if (a>b) t=s+1;
else if (a==b) t=s;
else t=2*s;
printf(“%d\n”,t);
} 若运行时输入:5 10 <回车>
程序2:
main( )
{
int s,t,a,b;
scanf( “%d%d”,&a,&b);
s=1;t=1;
if(a>0) {s=s+1;
if (a>b) t=s+1; }
else if (a==b) t=s;
else t=2*s;
printf(“%d\n”,t);
}
习题:课本p106 例题5.5;5.6;习题p111 ,5.5,5.8