文档详情

chapter4-流程控制结构.ppt

发布:2016-12-10约字共52页下载文档
文本预览下载声明
4.2 程序的三种基本结构 结构化程序设计 基本思想:任何程序都可以用三种基本结构表示,限制使用无条件转移语句(goto) 结构化程序:由三种基本结构反复嵌套构成的程序叫~ 优点:结构清晰,易读,提高程序设计质量和效率 三种基本结构 顺序结构 if ~ else 配对原则:缺省{ }时,else总是和它上面离它最近的未配对的if配对 特点:先执行循环体,后判断表达式 说明: 至少执行一次循环体 do~while可转化成while结构 expr 循环体 假(0) 真(非0) 循环体 While循环 例 用do~while循环求 /**/ #include stdio.h main() { int i,sum=0;i=1;do{ sum+=i; i++;}while(i=100);printf(%d,sum); } 例 while和do~while比较 /**/ #include stdio.h main() { int i,sum=0;scanf(%d,i);do{ sum+=i; i++;}while(i=10);printf(%d,sum); } main() { int i,sum=0;scanf(%d,i);while(i=10){ sum+=i; i++;}printf(%d,sum); } for语句 一般形式: for([expr1] ;[ expr2] ;[ expr3])循环体语句; 执行流程: expr2 循环体 假(0) 真(非0) for expr1 expr3 for语句一般应用形式: for(循环变量赋初值;循环条件;循环变量增值) { 循环体语句; } 说明: for语句中expr1, expr2 ,expr3 类型任意,都可省略,但分号;不可省 无限循环: for(;;) for语句可以转换成while结构 expr1; while(expr2) { 循环体语句; expr3; } 例 用for循环求 #include stdio.h main() { int i,sum=0;for(i=1;i=100;i++)sum+=i;printf(%d,sum); } 例:#includestdio.hmain( ){ int i=0;for(i=0;i10;i++)putchar(‘a’+i);} 运行结果:abcdefghij 例:#includestdio.hmain( ){ int i=0;for(;i10;i++)putchar(‘a’+i);} 例:#includestdio.hmain( ){ int i=0;for(;i10;)putchar(‘a’+(i++));} 例:#includestdio.hmain( ){ int i=0;for(;i10;putchar(‘a’+i),i++);} main() { int i,j,k;for(i=0,j=100;i=j;i++,j--){ k=i+j; printf(%d+%d=%d\n,i,j,k);} } #includestdio.h main() { char c;for(;(c=getchar())!=\n;)printf(%c ,c); } #include stdio.h main() { int i,c; for(i=0;(c=getchar())!=\n;i+=3) printf(%c ,i+c); } 例 (f0r)梯形法求数值积分 0 y x a a+h a+ih a+(i+1)h b f(x) 循环的嵌套 三种循环可互相嵌套,层数不限 外层循环可包含两个以上内循环,但不能相互交叉 嵌套循环的执行流程 (1) while(){ ……while(){ ……}…...} (2) do{ ……do{ ……}while( );…...}while( ); (3) while(){ ……do{ ……}while( );…….} (4) for( ; ;){ ……do{ ……}while();……while(){ ……}…... } 内循环 外循环 内循环 嵌套循环的跳转 禁止: 从外层跳入内层 跳入同层的另一循环 向上跳转 * 第四章 C程序流程设计 4.1 C语句概述 C语句:以“;”作分隔符,编译后产生机器指令. C语句分类 表达式语句:表达式加分号构成。 空语句: ; 程序控制语句(9种): if( )~else~ switch for( )~ while( )~ do~while( ) continue break goto return 分支 循
显示全部
相似文档