part 1
#include <stdio.h> int main() { int i; for(i=1; i<=5; i++) { if (i%3 == 0) continue; printf("i=%d\n",i); } return 0; }
#include <stdio.h> int main() { int i; for(i=1; i<=5; i++) { if (i%3 == 0) break; printf("i=%d\n",i); } return 0; }
由以上实验可看出,continue的作用是结束本次循环,并开启下一次循环,所以demo5_1.cpp的结果中才没有i=3。
而break的作用是结束本层所有循环,直接进行循环外的下一条语句。所以demo5_2.cpp的结果中只有i=1,i=2。
#include <stdio.h> const int LINE=3; const int COLUME=5; int main() { int line; int col; for(line=1; line<=LINE; line++) { for(col=1; col<=COLUME; col++) { if(col%3 == 0) continue; printf("%5d", col); } printf("\n"); } return 0; }
#include <stdio.h> const int LINE=3; const int COLUME=5; int main() { int line; int col; for(line=1; line<=LINE; line++) { for(col=1; col<=COLUME; col++) { if(col%3 == 0) break; printf("%5d", col); } printf("\n"); } return 0; }
continue和break在内层循环时,都不影响外层循环。
part 2
#include <stdio.h> int main() { int number, max, min, n; n=1; printf%d", &number); ("输入第%d个数: ", n); scanf(" max = number; min = number; while(n<5) { n++; printf("输入第%d个数: ", n); scanf("%d", &number); if(number>max) max = number; else if(number<min) min = number; } printf("最大数为: %d\n", max); printf("最小数为: %d\n", min); return 0; }
拓展
#include <stdio.h> int main() { int number, max, min, n; n=1; printf("输入第%d个数: ", n); scanf("%d", &number); max = number; min = number; while(n<5) { n++; printf("输入第%d个数: ", n); scanf("%d", &number); if(number>max) max = number; else if(number<min) min = number; } printf("最大数为: %d\n", max); printf("最小数为: %d\n", min); return 0; }
part 3
#include <stdio.h> #include <math.h> int main() { int a,b,c; a=101; c=0; while(a<=200){ for(b=2;b<sqrt(a);b++){ if(a%b==0) break; } if(b>sqrt(a)){ printf("%5d",a); c++; if(c%5==0) printf("\n"); } a=a+1; } printf("\n"); printf("101~200之间共有%d个素数",c); return 0; }
#include<stdio.h> int main(){ int a,b,c; c=5; printf("\n"); fora=1;a<=c;a++) { for(b=1;b<=c-a;++b) { printf(" "); } for(b=1;b<=2*-1;++i) { printf("*"); } printf("\n"); } return 0; }
总结
加强了continue和break语句的理解。训练了while,for和if语句的基本用法。
本次实验自我动手的地方有很多,帮助我发现了不少漏洞。
感叹一下还是基础不牢,往后需注意。
最后 关于求素数的题目,我超级想吐槽,琢磨了老久才完成,到现在还怨念满满。
存疑 为何加上 #include <math.h>后 sqrt(int)才成立。
评论:
https://www.cnblogs.com/zxy-345/p/10708159.html
原文:https://www.cnblogs.com/mgl1999/p/10713091.html