C语言课程分支语句PPT课件_第1页
C语言课程分支语句PPT课件_第2页
C语言课程分支语句PPT课件_第3页
C语言课程分支语句PPT课件_第4页
C语言课程分支语句PPT课件_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、重庆邮电大学计算机科学与技术学院 李盘林 ,分支结构,2020/7/15,回顾-格式输入函数,格式输入函数 scanf(格式控制字符串, 地址表列); scanf(%d,%f”, ,2020/7/15,d 以带符号十进制形式输入整型数据 o 以八进制无符号形式输入(无前导0) x 以十六进制无符号形式输入(无前导0 x) c 以字符形式输入单个字符 s 输入字符串,以非空字符开始,遇第一个 空白字符结束 f 以小数形式输入浮点数 e 以标准指数形式输入,scanf格式字符,2020/7/15,2020/7/15,格式: 变量名 = 表达式; 赋值运算符左操作数必须是占有存储空间的量 赋值是由方

2、向的,满足右结合性,与其他双目运算符不同 赋值运算符优先级低于算术、关系、逻辑运算符 赋值表达式的值被规定为运算完成后左操作数的值 不要写依赖求值顺序的表达式,赋值运算符,2020/7/15,关于复合赋值运算符: +=、-=、*=、/=、%=、=、,2020/7/15,主要内容,关系运算符、逻辑运算符、条件运算符 分支结构的运用,2020/7/15,重点 /*定义待判断的整数*/ printf(请输入一个整数:); scanf(%d, return 0; ,问题的求解,2020/7/15,练习2-判断字符的类型,从键盘上输入一个字符,判断它属于大写字母、小写字母、空格、数字、还是其他字符 分析

3、 如何从键盘输入一个字符 可以从大写、小写字母、数字的ASCII码值范围来判断字符究竟是什么类型,2020/7/15,字符输入输出函数,字符输出函数 putchar(ch) 输出一个字符ch 字符输入函数 getchar() 无参数 函数值为从输入设备接收的字符,2020/7/15,#include void main() char ch; printf(请输入一个字符:); scanf(“%c”, return 0; ,解法1,2020/7/15,#include #include int main() char ch; printf(请输入一个字符:); scanf(%c, return

4、0; ,解法2,2020/7/15,if-else中嵌套if-else 格式,几点说明,2020/7/15,else总是和最上面一个没有匹配的if配对 if-else语句整体构成一个复合语句 尽量用将属于if和else部分的语句括起来形成一个逻辑上的整体 属于if或else的语句应相对这两个关键字缩紧两个空格,几点说明,2020/7/15,C语言中唯一的三目运算符 表达式1 ? 表达式2 : 表达式3 含义: 如果表达式1的值非0(为真),则该条件表达式的结果就是表达式2的值,否则,就是表达式3的值 例: (x=0)?(y=1): (y= -1) (x%2)?printf(“oddn”):pr

5、intf(“evenn”); 条件运算符可以用一个if-else语句实现,条件运算符,2020/7/15,输入三角形三边,判断是否能构成三角形,如果能,则指出是什么三角形(等腰、直角还是一般三角形),练习3-判断三角形构成情况,float a,b,c; scanf (%f%f%f,错在哪里?,案例- x4-7-1,2020/7/15,错误案例分析,一般三角形,不是三角形,等边,等腰,直角 三角形,等腰 直角,有交叉关系的用并列的if 非此即彼的用ifelse,2020/7/15,案例- x4-7-2,void main() float a, b, c; int flag = 1; if (a+

6、bc ,2020/7/15,案例-x4-7-3,void main() if (a+bc ,错在哪里?,2020/7/15,main() if (a+bc ,案例- x4-7-4,2020/7/15,案例-x4-7-5,main() if (a+bc ,等腰在先 等边在后 是否可以?,2020/7/15,错误案例,/*等腰三角形的条件*/ if (a=b | b=c | c=a) #define LIMIT 1e-7 if (fabs(a-b)=LIMIT | fabs(b-c)=LIMIT | fabs(c-a)=LIMIT) /*直角三角形的条件 */ if (a*a+b*b=c*c |

7、a*a+c*c=b*b | b*b+c*c=a*a) if (fabs(a*a+b*b-c*c)=LIMIT | fabs(a*a+c*c-b*b)=LIMIT | fabs(c*c+b*b-a*a)=LIMIT),2020/7/15,格式:,多分支处理语句switch,switch(表达式) case 常量表达式1:语句1 ;break; case 常量表达式2:语句2 ;break; case 常量表达式n:语句n ;break; default:语句n+1 ,说明:switch语句后表达式的值可以是整型、字符型、枚举型,2020/7/15,要求:80分以上输出A,7079分为B,6069分为C,60分以下为D,分段输出学生成绩等级,switch(score/10) case 10: case 9: case 8: printf(“your grade is : A”);break; case 7: printf(“your grade is : B”);break; case 6: printf(“your grade is : C”);break; default: printf(“your grade is : D”);break; ,2020/7/15,作业,输入孩子的性别(b表示男孩,g表示女孩),父亲身高(faHeight)和母

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论