C语言第六讲-三种结构-顺序结构选择结构循环结构.ppt

上传人:小飞机 文档编号:6504292 上传时间:2023-11-07 格式:PPT 页数:14 大小:255KB
返回 下载 相关 举报
C语言第六讲-三种结构-顺序结构选择结构循环结构.ppt_第1页
第1页 / 共14页
C语言第六讲-三种结构-顺序结构选择结构循环结构.ppt_第2页
第2页 / 共14页
C语言第六讲-三种结构-顺序结构选择结构循环结构.ppt_第3页
第3页 / 共14页
C语言第六讲-三种结构-顺序结构选择结构循环结构.ppt_第4页
第4页 / 共14页
C语言第六讲-三种结构-顺序结构选择结构循环结构.ppt_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《C语言第六讲-三种结构-顺序结构选择结构循环结构.ppt》由会员分享,可在线阅读,更多相关《C语言第六讲-三种结构-顺序结构选择结构循环结构.ppt(14页珍藏版)》请在三一办公上搜索。

1、第六讲 三种结构,目标掌握条件运算符和逗号表达式顺序结构选择结构循环结构,条件运算符,条件运算符是C语言中唯一的一个三目运算符 表达式1?表达式2:表达式3;例如:int a=2,b;b=a0?+a:a;printf(“%dn”,b);b=a0?+a:a;printf(“%dn”,b);,?int a=2,b;b=a0?0:1;,逗号表达式,用逗号连接的表达式称为逗号表达式逗号表达式的值是最后一个表达式的值例如:int a=2,b=3,c=4;c=(a+b,b+c,c-a);/*不要给a,b赋值*/printf(“%dn”,c);/*c=2*/,顺序结构,顺序结构是程序设计中的三种基本结构之一

2、,又如:#include”stdio.h”main()int i,j,k,n;printf(“water flowernumber is:”);for(n=100;n1000;n+)i=n/100;/*分解出百位*/j=n/10%10;/*分解出十位*/k=n%10;/*分解出个位*/if(i*100+j*10+k=i*i*i+j*j*j+k*k*k)printf(“%-5d”,n);printf(“n”);,例如:#include”stdio.h”void main()int a=1234,b;b=a%10*1000;b+=a/10%10*100;b+=a/100%10*10;b+=a/10

3、00;printf(“%d”,b);,选择结构(一),选择结构能够使程序根据条件做出相应的判断,使程序选择执行某一段代码块,它使程序具有了智能,A:if(condition)statements;/*单分支选择结构*/,三项说明:,无论条件是否为真,总要先判断(执行)一遍条件如果语句只有一条,则大括号可以省略关于程序的缩排,?,输入字符检测,输入年份,判断是否是闰年,功能:首先判断条件是否为真,如果为真,则执行语句;否则,什么也不做,继续往下执行,选择结构(二),B、if(condition)statements1;else statements2;/*双分支选择结构*/,功能:首先判断con

4、dition是否为真,如果为真,则执行statements1,否则,执行statements2,三项说明:,无论条件是否为真,总要先判断(执行)一遍条件如果语句只有一条,则大括号可以省略关于程序的缩排,?,输入两个数,输出其中的最大数(最小数),对两个数据按升序排序并输出,选择结构(三),C、if(condition1)statements1;else if(condition2)statements2;else if(condition3)statements3;else if(condition4)statements4;./*至多执行一句*/,D、if(condition1)statem

5、ents1;else if(condition2)statements2;else if(condition3)statements3;else if(condition4)statements4;else statements5;/*必然执行一句*/,?,输入学生百分制成绩,转换成等级制输出,三项说明:无论条件是否为真,总要先判断(执行)一遍如果语句只有一条,则大括号可以省略程序的缩排,选择结构(四),E、switch(常量表达式)case 常量1:statements1;break;case 常量2:statements2;break;case 常量3:statements3;break;

6、case 常量4:statements4;break;default:statements5;break;,?,1、输入等级制分数,转化为 百分制输出,2、制作一个简单的菜单,循环结构(一),A、while(condition)statements;/*当型循环*/,功能:首先判断条件是否为真,如果为真,则执行语句块,执行完毕后,再次判断条件是否为真;如果为假,则跳出循环体。,?,计算5!,推广,求1100的和,推广,求数轴任意区间的数的和,四项说明:无论条件是否为真,总要先判断(执行)一遍在跳出循环体之前,还要再执行一遍条件如果语句只有一条,则大括号可以省略程序的缩排,计算任意数的阶乘,循环

7、结构(二),B、do statements;while(condition);,注意,功能:先执行循环体statements,然后再判断条件;如果为真,则继续执行;否则,跳出循环体,/*直到型循环*/,例如:#include”stdio.h”void main()int a=1,sum=0;dosum+=a;a+;while(a101);printf(“The sum is:%d”,b);,循环结构(三),C、for(init;condition;step)statements;,功能:1、首先执行init语句 2、判断condition 3、如果为真,则执行statements;如果为假,则

8、跳出 4、将statements执行完后,再执行step;转第二步,说明:两个分号,在任何情况下,一个都不能少 大多数情况下,要避免构成死循环 如果语句只有一条,则大括号可以省略 程序的缩排,for循环的变体形式,1、省略init语句 原因:初始化已经完成 例如:int a=1,b=0;for(;a10;a+)b+=a;printf(“%dn”,b);注意:分号不能省,2、省略condition语句 原因:条件不固定 例如:int a,b=0;for(a=1;a+)b+=a;if(a=10)break;printf(“%dn”,b);注意:分号不能省,3、省略step语句 原因:控制变量每次变

9、化不一样 例如:int a,b=0;for(a=1;a10;)b+=a;if(a=3)a+=2;else a+;printf(“%dn”,b);注意:分号不能省,与循环结构有关的关键字,break 用法:break;,功能:跳出当前循环,例如:在128365之间找出三个15的倍数并输出,continue,用法:continue;,功能:继续判断当前循环的条件,例如:计算1+2+3+5+6+7+8+9+10的和,while(a24)c*=a;c+;if(a=12)continue;b+=a;a+;,for(i=0;i10;i+)c*=a;c+if(i=5)continue;j+=I;,作业,书面作业:P86 1.2 1.3 1.4 2 P108 1.2 1.3 1.4 2.1 2.2 2.4附加题:1、int a=2,b=3,c;if(ab);c=a+b;程序段执行完毕后c的值是多少?2、int a=10,b=0;while(a0)b+=a;a+;if(a20)break;描述该段程序的功能?3、根据输入字母输出字符串 若输入m,则输出“Good mornning!”若输入n,则输出“Good afternoon!”若输入h,则输出“Hello!”若输入e,则输出“Good evening!”4、程序设计 求1!+2!+3!+4!+10!的值,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号