c语言课件3-三种基本结构的程序设计.ppt
文本预览下载声明
* * [例3.16]求调和级数中第多少项的值大于10。 调和级数的第n项形式为:1+1/2+1/3+…+1/n #include stdio.h #define LIMIT 10 void main() { int n; float sum; sum=0; n=1; for(;;) { sum=sum+1.0/n; if(sumLIMIT) break; n++; } printf(n=%d\n,n); } 返回 * * continue作用:只能用于循环语句中,立即结束本次循环,转去判断循环条件是否成立。 while(表达式)? …… …… 假(0) 真(非0) do …… …... while(表达式)? 假(0) 真(非0) 假(0) 表达式2? …… …... 真(非0) for 表达式1 表达式3 continue; continue; continue; 3.3.6 continue语句 * * [例3.17]求输入的正数之和。 #include stdio.h #define NUM 5 void main() { int i,n,sum=0; for(i=1;i=NUM;i++) { scanf(%d,n); if(n=0) continue; sum+=n; } printf(SUM=%d\n,sum); } * * 无条件分支结构语句的三种形式: goto语句:转向标号所在位置。 continue语句:转向本层循环的末尾,结束本次循环。 break语句:转向本层复合结构的下一语句。 返回 * * #include stdio.h void main() { int x,y,z; for(x=1;x=20;x++) for(y=1;y=33;y++) { z=100-x-y; if((z%3==0)(5*x+3*y+z/3==100)) printf(cock=%d\then=%d\tchiken=%d\n,x,y,z); } } 举例:公鸡一,值钱五;母鸡一,值钱三;鸡雏三,值钱一。百钱买百鸡,问公鸡、母鸡、鸡雏各几何? 算法:不定方程问题。设x、y、z分别表示公、母、雏三个量,则x最多为20,y最多为33,且z=100-x-y。其解不只一组。 程序举例 * * #include stdio.h #include math.h void main() { int m,i,n=0; for(m=101;m200;m=m+2) { for(i=2;i=sqrt(m);i++) if(m%i==0) break; if(isqrt(m)) { printf(%d ,m); n++; if(n%10==0) printf(\n); } } printf(\nprime number=%d\n,n); } 举例:求100~200间的全部素数。 算法:m不能被2~ 之间任一整数整除,则m为素数。 * * 举例:译密码。对英文字母A~Z、a~z按如下规律将电文变成密码:将字母A变成E,a变成e,即变成其后第4个字母;W变成A、X变成B、Y变成C、Z变成D。小写字母也按上述规律转换,非字母不变。如“China!”转换为“Glmre!”。输入一行字符,要求输出其相应的密码。 #include stdio.h void main() { char c; printf(Please input a string:\n); while((c=getchar())!=\n) { if((c=ac=z)||(c=Ac=Z)) { c=c+4; if(cZc=Z+4||cz) c=c-26; } printf(%c,c); } printf(\n); } 返回 * * The End! * 求平方根函数sqrt的返回值为double类型 注:switch语句中表达式和常量表达式的类型在不同编译系统下有不同的要求,在VC6.0下要求必须为整数、字符型或枚举类型;在TurboC2.0下要求表达式为任何数值类型、字符型或枚举类型,而常量表达式则必须为整数、字符型或枚举类型。 第三章 三种基本结构的程序设计 * * 3.1 顺序结构 3.2 分支(条件)结构 3
显示全部