《C语言第六讲-三种结构-顺序结构选择结构循环结构.ppt》由会员分享,可在线阅读,更多相关《C语言第六讲-三种结构-顺序结构选择结构循环结构.ppt(14页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第六讲 三种结构目标l掌握条件运算符和逗号表达式l顺序结构l选择结构l循环结构条件运算符条件运算符条件运算符是C语言中唯一的一个三目运算符 表达式1?表达式2:表达式3;例如:int a=2,b;b=a0?+a:a;printf(“%dn”,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*/顺序结构顺序结构顺序结构是程序设计中的三种基本结构之一又如:#include”stdio.h”main()i
2、nt 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/1000;printf(“%d”,b);选择结构(一)选择结构
3、(一)选择结构能够使程序根据条件做出相应的判断,使程序选择执行某一段代码块,它使程序具有了智能 A:if(condition)statements;/*单分支选择结构*/三项说明:无论条件是否为真,总要先判断(执行)一遍条件如果语句只有一条,则大括号可以省略关于程序的缩排?输入字符检测输入年份,判断是否是闰年功能:首先判断条件是否为真,如果为真,则执行语句;否则,什么也不做,继续往下执行选择结构(二)选择结构(二)B、if(condition)statements1;else statements2;/*双分支选择结构*/功能:首先判断condition是否为真,如果为真,则执行stateme
4、nts1,否则,执行statements2三项说明:无论条件是否为真,总要先判断(执行)一遍条件如果语句只有一条,则大括号可以省略关于程序的缩排?输入两个数,输出其中的最大数(最小数)对两个数据按升序排序并输出选择结构(三)选择结构(三)C、if(condition1)statements1;else if(condition2)statements2;else if(condition3)statements3;else if(condition4)statements4;./*至多执行一句*/D、if(condition1)statements1;else if(condition2)st
5、atements2;else if(condition3)statements3;else if(condition4)statements4;else statements5;/*必然执行一句*/?输入学生百分制成绩,转换成等级制输出三项说明:无论条件是否为真,总要先判断(执行)一遍如果语句只有一条,则大括号可以省略程序的缩排选择结构(四)选择结构(四)E、switch(常量表达式)case 常量1:statements1;break;case 常量2:statements2;break;case 常量3:statements3;break;case 常量4:statements4;brea
6、k;default:statements5;break;?1、输入等级制分数,转化为 百分制输出2、制作一个简单的菜单循环结构(一)循环结构(一)A、while(condition)statements;/*当型循环*/功能:首先判断条件是否为真,如果为真,则执行语句块,执行完毕后,再次判断条件是否为真;如果为假,则跳出循环体。?计算5!推广求1100的和推广求数轴任意区间的数的和四项说明:无论条件是否为真,总要先判断(执行)一遍在跳出循环体之前,还要再执行一遍条件如果语句只有一条,则大括号可以省略程序的缩排计算任意数的阶乘循环结构(二)循环结构(二)B、do statements;while
7、(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;如果为假,则跳出 4、将statements执行完后,再执行ste
8、p;转第二步说明:两个分号,在任何情况下,一个都不能少 大多数情况下,要避免构成死循环 如果语句只有一条,则大括号可以省略 程序的缩排for循环的变体形式循环的变体形式1、省略init语句 原因:初始化已经完成 例如:int a=1,b=0;for(;a=10)break;printf(“%dn”,b);注意:分号不能省3、省略step语句 原因:控制变量每次变化不一样 例如:int a,b=0;for(a=1;a10;)b+=a;if(a=3)a+=2;else a+;printf(“%dn”,b);注意:分号不能省与循环结构有关的关键字与循环结构有关的关键字break 用法:break;功
9、能:跳出当前循环例如:在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;ib);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!的值