c的for循环(二)

发布时间:2024-12-10 23:41

记住CPR的口诀:C(胸压)-A(人工呼吸)-R(循环) #生活技巧# #紧急应对技巧# #心肺复苏教程#

参考这一篇博文,c的for循环,基于这篇博文继续对程序改动

1,列出前50个素数

#include <stdio.h> int main() {int x;int cnt = 0;x = 1;while ( cnt <50 ) {int i;int isPrime = 1;//x是素数for ( i=2; i<x; i++ ) {if ( x % i == 0 ) {isPrime = 0;break; //判断这个数是不是素数,是的话跳出for循环}}if ( isPrime == 1 ) {cnt ++; //个数自加printf("%d\t", x); //输出这个素数,\t表示对齐if ( cnt %5 == 0 ) {printf("\n"); //表示每5个数进行换行}}x++;}return 0; }

12345678910111213141516171819202122232425262728

看下运行结果 :
在这里插入图片描述

2多重for循环嵌套,与break跳出多重循环,和goto

例:用1毛,2毛,5毛组合出输入的金额,

第一个,后续会优化
多个for循环嵌套,先由1毛循环,在循环里嵌套就可以实现这种列举问题,

#include <stdio.h> int main() {int a=1; //一毛int b=2; //俩毛int c=5; //五毛int x; //输入金额scanf("%d",&x);int mon = x*10;//对前面的金额都扩大了10倍,该处也*10for(a=1;a<mon*10;a++){for(b=2;b<mon*10;b++){for(c=5;c<mon*10;c++){if(a+b*2+c*5==mon){printf("%d个1毛,%d个俩毛,%d个五毛,可以凑出%d元 \n",a,b,c,x);}}}}return 0; }

123456789101112131415161718192021

看下运行结果
在这里插入图片描述

而在实际生活当中,我们往往只需要一种结果即可,代码如下:(我们只需要在每一层循环后面加上break跳出,而使得break跳出的条件是什么呢?定义一个变量exit,在有一种方法时改变exit的值,再在每一层的for循环中插入if判断exit的值,决定是否break)

#include <stdio.h> int main() {int a=1; //一毛int b=2; //俩毛int c=5; //五毛int x; //输入金额int exit = 0;scanf("%d",&x);int mon = x*10;//对前面的金额都扩大了10倍,该处也*10for(a=1; a<mon*10; a++) {for(b=2; b<mon*10; b++) {for(c=5; c<mon*10; c++) {if(a+b*2+c*5==mon) {printf("%d个1毛,%d个俩毛,%d个五毛,可以凑出%d元 \n",a,b,c,x);exit = 1;break;}}if(exit==1) {break;}}if(exit==1) {break;}}return 0; }

12345678910111213141516171819202122232425262728

看下结果:
在这里插入图片描述

针对于上面的break跳出还有一种方法,goto
goto name

name :

#include <stdio.h> int main() {int a=1; //一毛int b=2; //俩毛int c=5; //五毛int x; //输入金额scanf("%d",&x);int mon = x*10;//对前面的金额都扩大了10倍,该处也*10for(a=1; a<mon*10; a++) {for(b=2; b<mon*10; b++) {for(c=5; c<mon*10; c++) {if(a+b*2+c*5==mon) {printf("%d个1毛,%d个俩毛,%d个五毛,可以凑出%d元 \n",a,b,c,x);goto out;}}}}out:return 0; }

12345678910111213141516171819202122

结果:
在这里插入图片描述

网址:c的for循环(二) https://www.yuejiaxmz.com/news/view/438108

相关内容

Matlab的for循环优化
matlab中for循环的简单使用
matlab 中for循环的使用
python 循环结构(for
C++循环嵌套
C++循环语句——习题2
Python 循环讲解/从while到for循环(以求解S=1+2+3+……+n为例)
分治法解决循环赛日程表安排问题(C++)
语言C++之循环结构
用c语言实现旅行商问题的c

随便看看