《高级语言程序设计教课件》第4章 循环结构.ppt

《高级语言程序设计教课件》第4章 循环结构.ppt

《高级语言程序设计教课件》第4章 循环结构

* #include stdio.h main() { int i, j, k; for(i=1; i=5; i++) { for(j=1; j=5-i; j++) printf( ); for(j=1; j=i; j++) printf(*); printf(\n); } } 打印第i行的空格 打印第i行的星号 打印第i行的换行符 * 4.6 循环的中途退出 break语句——中止语句 功能:在循环语句和switch语句中,终止并跳出循环体或开关体 说明: break只能终止并跳出最近一层的结构 Break只能用于循环语句或switch语句 * exp …… …… F T while do …… …… exp F T while exp2 …… …… F T for exp1 exp3 break; break; break; * switch expr 语句组1 break; 语句组2 break; 语句组n break; 语句组 break; …… const 1 const 2 const n default case * void main() { int n; for (n=1; n=10; n++) { if (n%2 == 0) break; printf(“%5d”,n); } } 运行结果为: 1 写出程序的运行结果 * 【例4-16】从键盘上输入一个正整数n,判断n是否为素数。 分析 素数:只能被1和它本身整除的自然数 Step1 先输入任意一个正整数n Step2 令除数i从2~n-1取值,检查i能否被n整除,若整除则不用继续检查了,否则继续Step2 Step3 若in-1,则表明任意i都不能整除n,则n是素数,否则n不是素数 * #include stdio.h void main() { int n, i; printf(please input a number:); scanf(%d, n); for( i=2; i=n-1; i++) if( n%i==0 ) break; if(in-1) printf(%d is a prime number!\n , n); else printf(%d is not a prime number!\n, n); } * 程序改进 为了提高程序的执行效率,缩小检验区间 检验区间: 2~n-1 2~sqrt(n) * #include stdio.h #include math.h void main() { int n, i; printf(please input a number:); scanf(%d, n); for( i=2; i=n-1; i++) if( n%i==0 ) break; if(in-1) printf(%d is a prime number!\n , n); else printf(%d is not a prime number!\n, n); } sqrt(n); * continue语句——中断语句 功能:结束本次循环,跳过循环体中尚未执行的语句,进行下一次是否执行循环体的判断 仅用于循环语句中 * 假(0) exp …… …… 真(非0) while exp3 exp2 …… …… 假(0) 真(非0) for exp1 真(非0) do …… …… exp 假(0) while continue; continue; continue; * void main() { int n; for (n=1;n=10;n++) { if (n%2==0) continue; printf(“%5d”,n); } } break; 运行结果为: 1 3 5 7 9 运行结果为: 1 写出程序的运行结果 * 【例4-17】 输出能被3和7整除的三位正整数 #include stdio.h void main() { int i; for(i=100;i1000;i++) { if(i%3!=0) continue; if(i%7!=0) continue; printf( %d,i); } printf(\n); } * 4.7 算

文档评论(0)

1亿VIP精品文档

相关文档