3.2条件语句(课件)-《C语言程序设计》同步教学(高教版)

2024-11-09
| 19页
| 202人阅读
| 30人下载
普通

内容正文:

第三章 分支程序设计 1 OK 条件语句 2 3.2 条件语句(if语句) 02 if语句:if语句通常被称为选择语句或分支语句。 一般形式: if (表达式)语句; 说明: 1.执行if语句时,先对“表达式”进行求值,如果计算结果非0(为“真”),则执行其后的“语句”,否则跳过其后的“语句”。 表达式 语 句 真(非0) 假(0) 3 3.2 条件语句(if语句) 02 if语句:if语句通常被称为选择语句或分支语句。 一般形式: if (表达式)语句; 说明: 2.“表达式”的类型可以为任何类型的表达式。 例如:算术表达式-3+‘d’ 值为65 结果为“真” 赋值表达式a=0 值为0 结果为“假” 赋值表达式a=5 值为5 结果为“真”zhi 表达式 语 句 真(非0) 假(0) 4 3.2 条件语句(if语句) 02 if语句:if语句通常被称为选择语句或分支语句。 一般形式: if (表达式)语句; 说明: 3.“语句”可以是一条简单语句,也可以是符合语句。 例如:if(x<y) x=x+1; if(x<y){x=x+1; y=y+1;} 表达式 语 句 真(非0) 假(0) 5 3.2 条件语句(if语句) 02 例3-1: 输入一个成绩score,如果成绩大于60,则显示“pass”,否则不显示。 main( ) { int score; scanf("%d", &score ); if ( score >= 60 ) printf("pass "); } 运行结果: 1. 输入:65↙ 输出: pass 2. 若输入:56↙,则无输出 6 3.2 条件语句(if……else语句) 02 if……else语句 一般形式: if (表达式) 语句1; else 语句2; 表达式 语 句 1 语 句 2 真(非0) 假(0) 7 3.2 条件语句(if语句) 02 例3-2:从键盘输入一个正整数,如果该数为6的倍数,就输出一个“Yes!”,否则输出一个“No!”。 main( ) { int x; printf("请输入一个正整数:"); scanf("%d", &x ); if ( x%6 ==0 ) printf("Yes! "); else printf( "No! "); } 运行结果: 1. 请输入一个正整数:36↙ Yes! 2. 请输入一个正整数:15↙ No! 8 3.2.3 if语句嵌套 02 一般形式: if (表达式) 语句1; else if(表达式2) 语句2; else if(表达式3)语句3; else 语句4; 假 表达式1 语 句 1 表达式2 语 句 2 表达式3 语 句 3 语 句 4 假 假 真 真 真 9 3.2.3 if语句嵌套 02 例3-3有一个函数: x ( x < 1 )   y= 2 x -1 ( 1 ≤ x < 10 ) 3 x -10 ( x ≥10 ) 编写程序,输入x的值,输出y的值: #include <stdio.h> main( ) { float x, y; printf("请输入x的值:"); scanf("%f", &x ); if ( x < 1 ) y = x; else if ( x < 10 ) y = 2 * x -1; else y = 3 * x -10; printf("y值为:%.2f ", y ); } 10 3.2.3 if语句嵌套 02 x<1 y=x x<10 y=2*x-1 y=3*x-10 假 假 真 真 if else if else #include <stdio.h> main( ) { float x, y; printf("请输入x的值:"); scanf("%f", &x ); if ( x < 1 ) y = x; else if ( x < 10 ) y = 2 * x -1; else y = 3 * x -10; printf("y值为:%.2f ", y ); } 11 3.2.3 if语句嵌套 02 例3-3有一个函数: -1 ( x < 0 )   y= 0 ( x = 0 ) 1 ( x > 0 ) 编写程序,输入x的值,输出y的值: #include <stdio.h> main( ) { int x, y; printf("请输入x的值:"); scanf("%d", &x ); if ( x < 0 ) y = -1; else if ( x == 0 ) y = 0; else y = 1; printf("y值为:%d ", y ); } 12 3.2.3 if语句嵌套 02 [2018年高考] 从键盘上输入三个正整数a、b、c,判断能否以这三个数为边构成三角形。若可以,则计算三角形的面积且保留两位小数,若不可以,则输出“不能构成三角形”。 (提示:三角形的面积公式为 ,其中 ) 13 3.2.3 if语句嵌套 02 #include <stdio.h> #include <math.h> main( ) { int a,b,c; float p,s; printf("请输入三个正整数:"); scanf("%d%d%d", &a,&b,&c); if(a+b>c&&a+c>b&&b+c>a) {p=1.0/2*(a+b+c); s=sqrt(p*(p-a)*(p-b)*(p-c)); printf("由%d,%d,%d组成的三角形的面积是%.2f ",a,b,c,s); } else printf("%d,%d,%d这三个数构不成三角形",a,b,c); } 14 3.2 条件语句(if语句) 02 例3-1:下面程序的输出结果是: #include <stdio.h> main() { int a=1,b=2; if(a>b) {a++; b++; }else { a=0; b=10; } printf(“a=%d,b=%d ”,a,b); } 15 3.2.4 条件表达式 02 一般形式: 表达式1?表达式2:表达式3 计算表达式3的值 表达式1 计算表达式2的值 真(非0) 假(0) 若表达式1的结果为真(或非0),则条件表达式的值等于表达式2的值;若表达式1的结果为假(或为0),则结果为表达式3的值 16 3.2.4 条件表达式 02 例如: m=(x>y)?x:y; 表示将x和y中较大的值赋给m。若x>y,则将x的值赋给m,否则将y的值赋给m 说明: ①条件运算符的优先级高于赋值运算符,低于关系运算符和算术运算符。 x>y?x:y-1 等价于 (x>y)?x:(y-1) ②条件运算符的结合性是“右结合性”,即自右向左,可理解为先从右边开始加括号。 a==b?(c=0):a>b?(c=2):(c=-2) 等价于 a==b?(c=0):(a>b?(c=2):(c=-2)) 判断:若a=4,b=3,c=3,执行后的值为?若a=3,b=4,c=3呢? 17 3.2 条件语句(if语句) 02 例3-1:若有定义int i=-2,n;,则执行语句“n=++i==0?99:i==-1?11:22;”后,n的值是: 18 3.2 条件语句(if语句) 02 例3-1: 编写一个程序,判断一个字符是否为大写英文字母,若是,则转换为小写字母。 main( ) { char ch; scanf("%c", &ch ); ch = ( ch >= 'A' && ch <= 'Z' ? ch +32 : ch ); printf("%c ", ch ); } 19 $$

资源预览图

3.2条件语句(课件)-《C语言程序设计》同步教学(高教版)
1
3.2条件语句(课件)-《C语言程序设计》同步教学(高教版)
2
3.2条件语句(课件)-《C语言程序设计》同步教学(高教版)
3
3.2条件语句(课件)-《C语言程序设计》同步教学(高教版)
4
3.2条件语句(课件)-《C语言程序设计》同步教学(高教版)
5
3.2条件语句(课件)-《C语言程序设计》同步教学(高教版)
6
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。