第二节程序的三种控制结构--选择结构及其相关运算符
一、顺序结构程序设计
程序按照语句的书写顺序依次执行
二、选择结构程序设计
程序执行过程中需要判断条件,根据条件成立与否决定程序执行方向
语法:
if(条件)
{
...
语句体
...
}
说明:当条件成立时,执行语句体,条件不成立时,则跳过语句体
条件:是一个逻辑表达式,即由比较运算符或逻辑运算符连接起来的式子,其结果是逻辑真或逻辑假,在C语言中,结果是0则为假,结果是非0值则为真.
(1)比较运算符
>
>=
<
<=
== (等于)
!= (不等于)
(2)逻辑运算符
&& (逻辑与) 运算符两侧的表达式均为真时结果为真,否则为假
|| (逻辑或) 运算符两侧的表达式均为假时结果为假,否则为真
! (逻辑非) 非真即假,非假即真
(3)?号运算符
x=表达式1?表达式2:表达式3
当表达式1成立时,则将表达式2的值赋值给x,否则将表达式3的值赋值给x.
max=x>y?x:y;
等同于
if(x>y)
max=x;
else
max=y;
例:输入一个字母,判断是否是小写字母,如果是,则转换成大写输出
#include""
main()
{
char c1;
printf("please enter a character:\n");
scanf("%c",&c1);
if(c1>='a' && c1<='z')
{
c1=c1-32;
printf("the result is:%c\n",c1);
}
}
※复合语句:初花括号括起来来的若干条语句,当条件成立时,复合语句作为一个整体被执行,当if语句的语句体不是复合语句时,只控制其下的第一条语句
...else语句
语法:
if(条件)
{
...
语句体1
...
}
else
{
...
语句体2
...
}
说明:当条件成立时,执行语句体1,否则(条件不成立)执行语句体2
例:输入一个字符,如果是小写字母,则转换成大写输出,否则直接输出
#include""
main()
{
char c1;
printf("please enter a character:\n");
scanf("%c",&c1);
if(c1>='a' && c1<='z')
{
c1=c1-32;
printf("the result is:%c\n",c1);
}
else
printf("%c\n",c1);
}
...else if...else语句
语法:
if(条件1)
{
...
语句体1
...
}
else if(条件2)
{
...
语句体2
...
}
...
else if(条件n)
{
...
语句体n
...
}
else
{
...
语句体n+1;
...
}
说明:依次判断各条件,当某条件成立时,则执行其后的语句,之后退出if结构,如果所有条件均不成立,则执行else后面的语句
例:输入一个字符,如果是小写字母,则转换成大写输出,如果是大写字母则转换成小写输出,如果是数字,则直接输出,如果以上三种情况都不是,则输出一句话"输入错误,请重新输入"
#include""
main()
{
char c1;
printf("please enter a character:\n");
scanf("%c",&c1);
if(c1>='a' && c1<='z')
{
c1=c1-32;
printf("the result is:%c\n",c1);
}
else if(c1>='A' && c1<='Z')
{
c1=c1+32;
printf("the result is:%c\n",c1);
}
else if(c1>='0' && c1<='9')
printf("the result is:%c\n",c1);
else
printf("error,please reenter a character\n");
}
第二节 来自淘豆网www.taodocs.com转载请标明出处.