1、说出或写出switch多分支结构的框架技能考核下面程序段是为了实现:若ab为真,就使m=8、a=9;否则,m=5、b=7,看能否实现?if(a b)m=8;a=9;else m=5;b=7;判断下面语句是否有错?if(8);switch结构中必须有break吗?一定有default吗?循环程序结构C C语言构成循环的语句语言构成循环的语句 1 1)用)用gotogoto语句和语句和ifif语句构成循环;语句构成循环;2)用while语句构成循环;3)用do-while 语句构成循环;4)用for语句构成循环;goto语句构成循环格式:格式:goto goto 语句标号;语句标号;标号指出程序流
2、程转向的入口处 说明:语句标号用标识符表示说明:语句标号用标识符表示 示例示例求求1+2+3+1+2+3+100+100 的和的和main()int I,sum=0;I=1;sum=sum+I;I+;goto loop;loop:if(I=100)sum=sum+I;I+;goto loop;printf(”%d”,sum);loop是标号,不是标号,不是变量,不需要是变量,不需要定义,随时可用定义,随时可用!Free photoshow template from 4while语句构成循环语句构成循环格式:格式:while(表达式)循环体语句流程图流程图若循环体语句有两条及其若循环体语句有两
3、条及其以上,必须用复合语句以上,必须用复合语句表达式表达式循环体语句循环体语句0非非0Free photoshow template from 5while应用举例应用举例例例 显示显示110的平方的平方#include main()int i=1;while(i=10)printf(%d*%d=%dn,i,i,i*i);i+;运行结果:1*1=12*2=43*3=94*4=165*5=256*6=367*7=498*8=649*9=8110*10=100循环变量赋初值循环变量赋初值循环条件循环条件循环体语句循环体语句Free photoshow template from 6活活 动动当当n
4、的值为的值为3的时候,分析程序运行结果的时候,分析程序运行结果main()main()int a=0,n;int a=0,n;scanf(%d,&n);scanf(%d,&n);while(n-)while(n-)printf(printf(“%d%d”,a+,a+*2);2);分析如下程序段运行多少次?分析如下程序段运行多少次?main()main()int a,n=0;int a,n=0;while(a=5)while(a=5)a-=5;a-=5;printf(%d,n+);printf(%d,n+);Free photoshow template from 7do-while格式格式 d
5、o do 循环体语句循环体语句 while(while(表达式表达式);多条语句时,要用多条语句时,要用括起括起流程图流程图思考思考whilewhile和和do-whiledo-while循环的区别?循环的区别?有分号!有分号!循环体语句循环体语句0非非0表达式表达式Free photoshow template from 8do-while应用示例应用示例求:求:1+2+3+1+2+3+100+100 main()int I,sum=0;I=1;do sum=sum+I;I+;while(I3)n(n3)是否为素数。是否为素数。分分 析:析:8 8的因子有:的因子有:2 2、4 4 15 1
6、5的因子有:的因子有:3 3、5 5 16 16的因子有:的因子有:2 2、4 4、8 8 20 20的因子有:的因子有:2 2、4 4、5 5、1010 结结 论:论:任何数的因子不可能超过其自身的一半任何数的因子不可能超过其自身的一半循环控循环控制分析:制分析:循环变量初值:循环变量初值:m=2m=2 循环条件:循环条件:m =n/2 m =n/2 循环变量增值:循环变量增值:m+m+Free photoshow template from 11编码main()main()int n,m,sign=1;int n,m,sign=1;printf(printf(“请输入一个大于请输入一个大于
7、3 3的正整数的正整数n:n:”););scanf(scanf(“%d%d“,&n);,&n);for(m=2;m =n/2;m+)for(m=2;m =n/2;m+)if(n%m=0)if(n%m=0)sign=0;sign=0;if (sign=0)printf(if (sign=0)printf(“%d%d不是素数!不是素数!”,n);n);else printf(else printf(“%d%d是素数!是素数!”,n);n);sign是信号量Free photoshow template from 12练习输出输出10010010001000之间的所有奇数,要求每行输出之间的所有奇数,要求每行输出8 8个数。个数。Free photoshow template from 13活动分析书上分析书上P64P64:例例4-94-9Free photoshow template from 14作业书上作业书上作业P73 P73 一、二一、二;本上作业本上作业P75 1-4P75 1-4