C语言分支结构程序文档格式.docx
《C语言分支结构程序文档格式.docx》由会员分享,可在线阅读,更多相关《C语言分支结构程序文档格式.docx(10页珍藏版)》请在冰点文库上搜索。
不要误认为上面是两个语句(if语句和else语句)。
它们都属于同一个if语句。
else子句不能作为语句单独使用,它必须是if语句的一部分,与if配对使用。
例:
#include<
stdio.h>
main()
{
inta=0,b=0,c=0,d=0;
if(a=1)
b=1;
c=2;
else
d=3;
printf(“%d,%d,%d,%d\n”,a,b,c,d);
}
程序输出【】
A.0,1,2,0B.0,0,0,3C.1,1,2,0D.编译有错
inta,b,k;
scanf("
%d,%d"
&
a,&
b);
k=a;
if(a<
b)k=a%b;
elsek=b%a;
printf("
%d\n"
k);
}/*运行时输入5,2,问:
输出的结果为?
*/
inta=1,b=2,c=3,d;
if(a==b)
d=1;
d=c;
d);
inta,b;
a=3;
b=5;
if(a>
b)
a++;
b++;
输出的结果,a不变,b变。
3.if的第三种形式
if(表达式1)语句1;
elseif(表达式2)语句2;
elseif(表达式3)语句3;
…..
else语句n;
if(score>
=90)a++;
elseif(score>
=80)b++;
=70)c++;
=60)d++;
elsee++;
intx=2,y;
if(x<
0)
y=0;
elseif(x<
10)
y=1/x;
elsey=1;
y);
}/*程序的输出结果为:
*/
4.注意事项
(1)if后的表达式必须用小括号括起来,表达式可以是关系表达式或逻辑表达式等任意合法的表达式
if(3)printf(“OK!
”);
(2)所有的语句都应该是单条语句,如果不是,需要用大括号括起来组成复合语句(考点)
inta=5,b=2;
a=3;
b=4;
%d,%d\n"
a,b);
inta=-1,b=1,k;
if((++a<
0)&
&
(b--<
=0))
printf("
else
b,a);
inta=3,b=5,c=7;
if(a>
a=b;
c=a;
if(c!
=a)
c=b;
%d,%d,%d\n"
a,b,c);
floata,b,t;
%f,%f"
{
t=a;
a=b;
b=t;
}
%-5.2f,%-5.2f\n"
}/*运行时输入3.6,-3.2,问:
输出结果为:
(二)if的嵌套
if()
if()语句1;
else
if()语句3;
else语句4;
else和if的配对原则:
else总是和它上面的最近的未配对的if配对。
y=
-1
(x<
(x=0)
1
(x>
下面哪一个不符合题目要求?
(1)if(x<
0)y=-1;
elseif(x==0)y=0;
elsey=1;
(2)if(x>
=0)
if(x>
0)y=1;
elsey=0;
elsey=-1;
(3)y=1;
if(x!
=0)
(4)y=-1;
二.switch语句
1.一般形式
switch(表式达)
case常量表达式1:
语句1;
case常量表达式2:
语句2;
case常量表达式3:
语句3;
。
case常量表达式n-1:
语句n-1;
default:
语句n;
2.求解过程:
计算表达式的值,并与各个常量表达式相比较,若相等则执行其后的语句,依次执行,若都不等则执行default后的语句
3.说明:
1)表达式的值必须为整型或字符型,若不是,则需先转换成整型或字符型
2)case后面的常量表达式的值为整型或字符型,并且每一个值不能相同
3)break是终止执行,直接跳出switch语句
4)case与常量表达式之间要加空格(考点)
inta;
%d"
a);
switch(a)
case1:
printf("
Monday\n"
);
case2:
Tuesday\n"
case3:
Wednesday\n"
case4:
Thursday\n"
case5:
Friday\n"
case6:
Saturday\n"
case7:
Sunday\n"
default:
error\n"
进行比较:
break;
charch;
ch=getchar();
switch(ch)
case'
H'
:
Hello!
\n"
G'
Goodevening!
default:
Bye_bye!
}/*运行时输入H,则输出结果为:
intx=1,y=0,a=0,b=0;
switch(x)
switch(y)
{
case0:
a++;
case1:
b++;
}
a++;
b++;
a=%d,b=%d\n"
}/*运行的结果为: