第四章--选择结构
更新时间:2023-06-02 19:32:01 阅读量: 实用文档 文档下载
第四章 选择结构
主 要 内 容1. 关系、逻辑、条件运算符和表达式
2. if语句3. 程序举例
switch 语句
第四章 选择结构
关系运算 > >= <
对两个运算量之间的大小比较 <= = = != 结合性:从左向右 假 0 z=x<y;
关系表达式: int x=2, y=3,z; 注意:
值:真 1 z=x==y;
(1)字符数据的比较按照ASCII码值进行。 z= a > A
(2)与数学上的关系式有区别:例:5>2>7>8的值为0 1<=x<=2 不表示x在[1,2]区间.
第四章 选择结构
逻辑运算优 先 级
值
真 1
假 0 假 亦真
! (逻辑非) 双 目 &&(逻辑与) ||(逻辑或)
两者全真 才为真 一个为真 就是真
例:z=5&&7;
z=9>2&&7<5- !0;
注意: (1)在逻辑运算中,非0值参加逻辑运算时被看成1处理 例: z=!5;(2) &&表达式中,一端值为0,则不用计算另一端, 表达式的值肯定为0 例:z=7<2&&8-5; (3) ||表达式中,一端为非0,则不用计算另一端,
表达式的值肯定为1 例:z=7>2||2<0;
第四章 选择结构
条件运算 e1?e2:e3
? :
结合性从右至左
若e1为真(非0),表达式的值为e2的值, 若e1为假,为e3的值
例: min=a<b?a:b
x>3?6:0.2
第四章 选择结构
if语句
形式1 P N B if(表达式) 语句A 例: if(x>y)
Y A
printf("%d", x);else printf(" %d", y);
else语句B 形式2 if(表达式)
Y
P
N
语句体Aelse 语句体B
例: if(x>y) printf("%d", x);
A
第四章 选择结构
if(表达式) 语句体A else 语句体B
if(x>y) {
x=(x+2)*6;printf("%d", x);
if(x>y) printf("%d", x); else printf("%d", y);
} else { y=y+4; printf(" %d", y); }
第四章 选择结构
if语句的嵌套 一般形式
if (表达式1)if(表达式) 语句体A if (表达式2) 语句1 内嵌if
else语句体B else
else 语句2if (表达式3) 语句3 else 语句4
内嵌if
第四章 选择结构
1. 注意: if (表达式)中,表达式可以是逻辑、关系和算术表达式。 2. 若语句不止一条,则必须用{ }括起来。在{ }外不用分号.不加{ }时, 语句体到第一个分号处结束。 3. else不能单独使用,与最近的if 配对,可加{ } 来改变配对关系。
#include<stdio.h> int main( ) { int x=2,y=1; if(x>y) x=x+2; printf("x=%d\n", x); else y=y+2; printf("y=%d\n", y); }
第四章 选择结构
程序举例 1、输入2个数a,b,要求按由小到大的顺序输出。#include<stdio.h> int main( ) #include<stdio.h>
int main( ){float a,b,t; scanf("%f,%f",&a,&b); if(a>b) printf ("%f,%f\n",b,a); else printf("%f,%f\n",a,b); }
{float a,b,t;scanf("%f,%f",&a,&b);
if(a>b) {t=a; a=b; b=t; }printf("%f,%f\n",a,b); }
第四章 选择结构
2、输入3个数a,b,c, 要求按由小到大的顺序输出。#include<stdio.h> int main() { float a,b,c,t; scanf("%f,%f,%f",&a,&b,&c); if(a>b) {t=a; a=b; b=t; } if(a>c) {t=a; a=c; c=t; } if(b>c) {t=b; b=c; c=t; } printf("%f,%f,%f\n",a,b,c); }
第四章 选择结构
3、有一函数:
–1 y= 0 1 (x<0) (x=0) (x>0) #include <stdio.h> int main ( ) { int x, y; scanf("%d", &x); if (x<0) y= –1; if (x= =0) y=0; if (x>0) y=1; printf ("y=%d\n", y); }
编一程序,
输入一个x值,输出y值。
第四章 选择结构
3、有一函数:–1 y= 0 1 (x<0) (x=0) (x>0)
#include <stdio.h> main ( ) { int x, y; scanf("%d", &x); if (x<0) y= –1; else
编一程序,
输入一个x值,输出y值。
if (x= =0) y=0; else y=1; printf ("y=%d\n", y); }
第四章 选择结构
switch语句
多路分支选择switch(表达式) { case 常量表达式1: case 常量表达式2: … case 常量表达式n: default : } 语句1; 语句2; 语句n; 语句n+1;
执行:
计算条件表达式 没有匹配的case 执行default
以条件表达式值相同的case为入口 执行后面的各语句
第四章 选择结构
在执行switch结构时,当执行完某case 后的语句后,将顺序执 行后面case 后的语句。
switch(grade) { case A :printf(“85~100\n”); case B :printf(“70~84\n”); case C :printf(“60~69\n”); case D :printf(“<60\n”);
grade= A ;
85~100 70~84 60~69 <60 errorgrade= F ; error
default: printf(“error\n”); }
第四章 选择结构
break语句 无条件终止所在语句的执行,即跳出当前语句。switch(grade) { case A :printf(“85~100\n”); break; case B :printf(“70~84\n”); break; case C :printf(“60~69\n”); break; case D :printf(“<60\n”); break; default: printf(“error\n”); } 85~100 85~100 grade= A ;
70~84
第四章 选择结构
注意:(1)case常量表达式必须是整型或字符型。
(2)同一个switch结构中的常量表达式值必须互不相同。
(3)在switch结构中,case 与 default 的顺序可以任意, 各case之间的顺序也可以任意。
第四章 选择结构
程序举例
1、写程序,判断某一年是否是闰年。 能被4整除而不能被100整除,或者能被400整除的年份
#include <stdio.h> void main( ) { int year; scanf("%d",&year); if(year%4==0&&year%100!=0||year%400==0) printf("\n%d年是闰年",year);
elseprintf("\n%d年不是闰年",year); }
第四章 选择结构
2、运输公司对用户计算运费.路程越远,每吨每千米的运费越低。 标准如下: s<250 250≤s<500 500≤s<1000 1000≤ s<2000 2000≤ s<3000 3000≤ s 每吨每千米的基本运费p 折扣为d 没有折扣
2%折扣5%折扣
8%折扣10%折扣 15%折扣 货物重量w 总运费f 运输距离s f=p*s*w*(1-d);
第四章 选择结构
#include"stdio.h" void main( ) {float p,s,w,d,f; scanf("p=%f,s=%f,w=%f",&p,&s,&w); if(s<250) if(s>=250&&s<500) if(s>=500&&s<1000) if(s>=1000&&s<2000) if(s>=2000&&s<3000) if(s>=3000) f=p*s*w*(1-d); printf("f=%f\n",f); } d=0.0; d=0.02; d=0.05; d=0.08; d=0.10; d=0.15;
第四章 选择结构
主 要 内 容1. 关系、逻辑、条件运算符和表达式
2. if语句3. 程序举例
switch 语句
第四章
选择结构
上 机 作 业P112 4、 6、 8
正在阅读:
第四章--选择结构06-02
2012年呼和浩特市中考试卷语文05-20
北京华联销售区域手册04-15
中级骨伤06-09
解语石管窥董氏针灸08-10
大学无机化学课后习题解析第二章03-14
初中英语语音教学初探11-05
第五章 网络信息资源上机作业 - 图文04-16
第九章 电功电功率练习(二)03-05
2 CRH3型动车组牵引与控制特性分析06-11
- 教学能力大赛决赛获奖-教学实施报告-(完整图文版)
- 互联网+数据中心行业分析报告
- 2017上海杨浦区高三一模数学试题及答案
- 招商部差旅接待管理制度(4-25)
- 学生游玩安全注意事项
- 学生信息管理系统(文档模板供参考)
- 叉车门架有限元分析及系统设计
- 2014帮助残疾人志愿者服务情况记录
- 叶绿体中色素的提取和分离实验
- 中国食物成分表2020年最新权威完整改进版
- 推动国土资源领域生态文明建设
- 给水管道冲洗和消毒记录
- 计算机软件专业自我评价
- 高中数学必修1-5知识点归纳
- 2018-2022年中国第五代移动通信技术(5G)产业深度分析及发展前景研究报告发展趋势(目录)
- 生产车间巡查制度
- 2018版中国光热发电行业深度研究报告目录
- (通用)2019年中考数学总复习 第一章 第四节 数的开方与二次根式课件
- 2017_2018学年高中语文第二单元第4课说数课件粤教版
- 上市新药Lumateperone(卢美哌隆)合成检索总结报告
- 第四章
- 结构
- 选择
- 大学电工技术 电力电子技术
- 峰值电流模式斜坡补偿电路
- 初三政治课堂实录第三单元 做意志坚强的人第六课 为坚强喝彩
- 君子之交淡如水,小人之交甜如醴
- SPL-EP-ENG-03新改扩建项目环境影响管理程序
- 陕西省咸阳市2019_2020学年高二数学下学期期末教学质量检测试题文
- 管道密封圈项目可行性研究报告
- 外贸服装跟单详尽工作流程
- 发动机电控系统-BOSCH
- 各个时期的中国重点大学
- 自动控制原理第一章教案
- 霍兰德职业兴趣类型我的生涯规划档案
- Chap02_数字图像基础(中)
- 电子信息技术就业方向报告
- 2009年SCI、EI收录中国期刊一览表
- 瓦斯监测工考试题库总汇
- 五年级奥数追及问题和环形行程问题
- 四六级作文经典句型总结
- 高档西裤缝制工艺流程
- 数值分析课程设计