C语言教程,选择结构
学习目的:选择控制结构程序设计是
三大程序结构中重要的部分。通过
讲解,使学生熟悉选择控制结构程
序设计的编写方式、运行方法,能够正确、快速的编程。
选择结构内容介绍
1、选择结构
2、选择结构
3、程序举例
所谓关系运算就是比较运算,是我们对问题作出选择的基础。 C语言有 6种关系运算符。(难
点是关系表达式)
1、关系运算符
① < ② <= ③ > ④ >= ⑤ == ⑥ !=
前 4个关系运算符级别高于后 2种。
2、关系表达式(运算方向由左向右)
例,a=3,b=2,c=1 则,
① a>b 值为真 ② (a>b)= =c 值为真
关系运算符和关系表达式
逻辑运算符和逻辑表达式
逻辑运算就是要得出真假结论,是告诉我们问
题对错的基础。 C语言有 3种逻辑运算符。(难
点是逻辑表达式)
1、逻辑运算符
① && 与 ② ‖ 或 ③ ! 非
第 3个逻辑运算符级别最高,前 2种相同。
2、逻辑表达式
例,a=3,b=2,c=1 则,
① a&& b 值为真 ② (a>b) ‖ c 值为真
if语句
if 语句的 3种形式,
1.if(表达式 ) 语句
2.if(表达式 ) 语句 1 else 语句 2
3.if(表达式 1) 语句 1
else if (表达式 2) 语句 2

else if (表达式 m) 语句 m
else 语句 n
例:输入两个整数,按值由小到大的次序输出这
两个数 (单分支 )。
main( )
{ int a,b,t;
scanf(“%f,%f”,&a,&b); //输入 3 和 6
if(a>b)
{ t=a; a=b; b=t; }
printf(“%d %d”,a,b);
}
答案,3 6
例,x值如果大于零则 y为 1,x值如果小于等于零
则 y为 0 。
void main( )
{ int x,y;
scanf(); //输入 5
if(x<=0) y=0;
else y=1 ;
printf("x=%d,y=%d\n",x,y);
}
答案,x=5,y=1
例:在执行程序时,为了使输出结果为 t=4,则 a
和 b输入的值应满足的条件是,____ 。
# include <stdio.h>
void 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+t;
else if(a = = b) t=5;
else t=2*s;
printf("t=%d\n",t);
}
答案,0<a<b
条件运算符
if(a>b) max=a
else max=b
上式的作用同样可以用下式来处理,
max=(a>b)? a,b ;
条件表达式的一般形式为,
表达式 1? 表达式 2, 表达式 3
例,a=3,b=2则, max=(a>b)? a,b ;的是 3。
例:程序运行后输出的结果是,____。
main( )
{ int p=30;
printf("%d\n",( p/3>=10? p/10, p%3 ) );
}
答案,3
switch语句
switch 语句的一般形式,
Switch(表达式 )
{ case 常量表达式 1, 语句 1
case 常量表达式 2, 语句 2

case 常量表达式 n, 语句 n
default, 语句 n+1
}
例:程序运行后输出的结果是,___ 。
void main( )
{ char grade;
grade=75;
switch(grade)
{ case'a',case 'A':printf("85~100\n"); break;
case 'b':case 'B':printf("70~84\n"); break;
case 'c':case 'C':printf("60~69\n"); break;
default,printf("error\n");
}
}
答案,error
例:程序运行后输出的结果是,___ 。
,
void main( )
{int p=2;
switch(p)
{ case1,printf("is 1\n");
break;
case2,printf("is 2\n");
break;
}
}
答案,is 2
结束