C语言第4章-控制结构与基本算法.ppt
文本预览下载声明
【例】打印九九表 (循环嵌套) int main() { int i,j; for(i=1;i=9;++i) { putchar(\n); for(j=1;j=9;++j) printf(%5d,i*j); } putchar(\n); return 0; } * 中科大自动化系 * 1 2 3 4 5 6 7 8 9 2 4 6 8 10 12 14 16 18 3 6 9 12 15 18 21 24 27 4 8 12 16 20 24 28 32 36 5 10 15 20 25 30 35 40 45 6 12 18 24 30 36 42 48 54 7 14 21 28 35 42 49 56 63 8 16 24 32 40 48 56 64 72 9 18 27 36 45 54 63 72 81 Press any key to continue 【例】打印三角形九九表 void main(void) { int p,p2; for(p=1;p=9;p++) //循环9次,1~9 { for(p2=1;p2=p;p2++)//每次循环次数由P决定 printf(%2d*%2d=%2d ,p,p2,p*p2); printf(\n);//中间循环结束换行 } return ;//运行结束,返回操作系统 } * 中科大信息学院 * 【例】 输出4x5矩阵(循环嵌套) int i,j,n=0; //i,j行列变量,n计数 for(i=1;i=4;i++) for(j=1;j=5;j++,n++) { if(n%5==0) printf(\n); printf(%d\t ,i*j); } printf(\n); * 中科大自动化系 * for(i=1;i=4;i++) { printf(\n); for(j=1;j=5;j++) printf(%6d,i*j); } * 中科大自动化系 * 4.5 break语句、continue语句和goto语句 break语句作用于switch语句,中止switch转下一条语句。 break语句作用于循环语句,退出最内一层循环。 continue语句作用于循环语句,结束本次循环(少执行一次循环体)。 goto语句作用是直接转向语句标号所标识的语句执行。 语句形式:goto 标识符;语句标识:标识符:语句; * 中科大自动化系 * 【例】将100~200之间的不能被3整除的数输出 for(n=100;n=200;n++) { if(n%3==0) continue; printf(%d ,n); } 如果用break替换continue,即在100~200间输出不能被3整除的数,第一次遇到能被3整除的数就结束。 for(n=100;n=200;n++) if(n%3!=0) printf(%d ,n); * 中科大自动化系 * 【例】 判断整数n是否素数(break应用举例) k=sqrt(n); for(i=2;i=k;i++) if(n%i==0)break; if(i=k+1) printf(%d is prime number\n,n); else printf(“%d is not prime number\n”,n); for(i=2;i=n-1;i++) if(n%i==0)break; if(i=n) printf(%d is prime number\n,n); else printf(%d is not prime number\n,n); * 中科大自动化系 * 【例4.13】 求3~100间的全部素数 int n,k,i,m=0; for(n=3;n100;n=n+2) { k=sqrt(n); for(i=2;i=k;i++) if(n%i==0) break; if(i=k+1) { printf(%6d ,n) ; m=m+1; } if(m%
显示全部