文档详情

C程序流程与控制结构.ppt

发布:2017-02-16约8.41千字共44页下载文档
文本预览下载声明
for 语句的有关其它说明 当表达式2空时,形成死循环。如: for( ; ; ); 就是死循环; for 语句具有延时功能,如: for(j=0; j1000; ++j); // for 后为空 表达式1、表达式2和表达式3中的任意一个表达式都可以为空,表达式1和表达式3也可以包含多个赋值语句。如: for ( j=1, k=1; j10; j++, k++ ) for 循环语句主要运用于计数器循环,即是说,当循环的次数确定时,常用 for 循环语句。如果循环次数不确定,即终止条件不是有确定的次数控制时,可以用 while或do-while,也可以使用 for 循环 作业 P120-121 T6.4, T6.10, T6.13 上机:  (上机) P120 T6.1, T6.6 i10 printf 假(0) 真(非0) i=1 j++ j=1 j10 真(非0) 假(0) i++ for(i=1;i10;i++) for(j=1;j10;j++) printf((j==9)?%4d\n:%4d,i*j); 4.5 辅助控制语句 break语句 功能:在循环语句和switch语句中,终止并跳出循环体或开关体 说明: break只能终止并跳出最近一层的结构 break不能用于循环语句和switch语句之外的任何其它语句之中 expr …… break; …… 假(0) 真(非0) while do …… break; …... expr 假(0) 真(非0) while expr2 …… break; …... 假(0) 真(非0) for expr1 expr3 switch expr 语句组1 break; 语句组2 break; 语句组n break; 语句组 break; …... const 1 const 2 const n default case 例 break举例:输出圆面积,面积大于100时停止 #define PI 3.14159 main() { int r; float area; for(r=1;r=10;r++) { area=PI*r*r; if(area100) break; printf(r=%d,area=%.2f\n,r,area); } } 例 break举例:小写字母转换成大写字母,直至输入非字母字符 #include stdio.h main() { int i,j; char c; while(1) { c=getchar(); if(c=a c=z) putchar(c-a+A); else break; } } continue语句 功能:结束本次循环,跳过循环体中尚未执行的语句,进行下一次是否执行循环体的判断 仅用于循环语句中 expr …… continue; …… 假(0) 真(非0) while 真(非0) do …… continue; …... expr 假(0) while expr2 …… continue; …... 假(0) 真(非0) for expr1 expr3 例 求输入的十个整数中正数的个数及其平均值 /*ch5_12.c*/ #include stdio.h main() { int i,num=0,a; float sum=0; for(i=0;i10;i++) { scanf(%d,a); if(a=0) continue; num++; sum+=a; } printf(%d plus integers sum :%6.0f\n,num,sum); printf(Mean value:%6.2f\n,sum/num); } 程序举例 t=1,pi=0,n=1.0,s=1 当|t|?1e-6 pi=pi+t n=n+2 s=-s t=s/n pi=pi*4 输出pi 分子:1,-1,1,-1… 分母:1,3,5,7,... 例 求Fibonacci数列:1,1,2,3,5,8,……的前40个数 f1=1,f2=1 for i=1 to 20 输出f1,f2 f1=f1+f2 f2=f2+f1 1 5 34 233 1597 10946 75025 514229 35245781 8 55 377 2584 17711 121393 832040 57028872 13
显示全部
相似文档