基本信息
文件名称:程序设计基础(C语言)教程课件:选择结构.pptx
文件大小:197.27 KB
总页数:38 页
更新时间:2025-06-05
总字数:约3.8千字
文档摘要

选择结构;1、顺序结构

2、选择结构

3、循环结构;4选择结构;;;注意:

(1)条件运算符的运算优先级低于关系运算符和算数运算符,但高于赋值符。

max=(ab)?a:b相当于:max=ab?a:b

(2)条件运算符“?:”是一对运算符,不能分开单独使用。

(3)条件运算符的结合方向是自右向左。

ab?a:cd?c:d应理解为:ab?a:(cd?c:d)

;【例】从键盘上输入一个字符,如果它是大写字母,则把它转换成小写字母输出;否则,直接输出。

[分析]:利用双分支选择结构实现,通过判断表达式的值选择执行语句。;【例】从键盘输入一年份,判别该年是否为闰年。

分析:通常,每四年里有三个平年一个闰年。公历年份是4的倍数的,一般都是闰年。也就是我们通常所说的:

四年一闰,百年不闰,四百年再闰。

所以2000年是闰年,2100年不是闰年。因此,判断闰年有两种标准:

(1)能被4整除,但不能被100整除;

(2)能被4整除,也能被400整除。

这两个条件只要有一个满足就可以了。例如,2000年不满足第一个条件,但满足第二个条件,所以是闰年。;leap;#includestdio.h

voidmain()

{

intyear,leap;

printf(Enteryear:);

scanf(%d,year);

if(year%4==0(year%100!=0||year%400==0))

leap=1;

else

leap=0;

if(leap)

printf(%disaleapyear.\n,year);

else

printf(%disnotaleapyear.\n,year);

}

运行结果:

Enteryear:2018↙

2018isnotaleapyear.;;;形式三:

格式:;【例】故障率是工业产品的重要指标,是指产品发生故障间隔时间的最低要求,在此作以下要求,故障时间为6000~7000h以上为良品,5000~6000h为合格产品,4000~5000h的为不合格产品,低于4000h为报废产品,请用ifelse语句实现此算法。

;注意:

(1)if语句后面的表达式一般是逻辑表达式或关系表达式,但也可以是其他表达式,如赋值表达式等,甚至也可以是一个变量。根据表达式的值判断条件是否满足,即“非零”为“真”,“零”为“假”。

例如:if(a=5)语句,或if(b)语句都是允许的。

(2)在if语句中,条件判断表达式必须用括号括起来,在语句之后必须加分号。

(3)???if语句的三种形式中,所有的语句应为单个语句,如果要想在满足条件时执行一组(多个)语句,则必须把这一组语句用花括号{}括起来组成一个复合语句。但要注意的是在右花括号}之后不能再加分号。

;4.2.2嵌套的if语句;4.2.2嵌套的if语句;if(expr1)

if(expr2)statement1

elsestatement2

else

if(expr3)statement3

elsestatement4;例输入两数并判断其大小关系;if~else配对原则:缺省{}时,else总是和它上面离它最近的未配对的if配对;例考虑下面程序输出结果:

main()

{intx=100,a=10,b=20;

intv1=5,v2=0;

if(ab)

if(b!=15)

if(!v1)

x=1;

else

if(v2)x=10;

x=-1;

printf(%d,x);

};【例】用if语句的嵌套形式,完成两个数大小关系(大于、小于、等于)的比较与输出。

[分析]:采用嵌套结构即进行有包含关系的多次条件判断。本例子中可以先判断两个数是否相等,若不等则再判断是大于还是小于的关系。;4.3switch语句;4.3switch语句;switch(表达式)

{caseE1:语句组1;break;

caseE2:语句组2;break;

…….

caseEn:语句组n;break;

[d