合理利用for循环打印素数

复习c语言期间当然离不开最一点基础题喽,今天有一道题我想了好一会,打印100-300之间的素数因为这个是之前做过的题,没想太多就直接for循环嵌套了 ,可是素数我们知道只有两个因数,只能被自己本身和一整除,当进行到第二层循环式,肯定要找一个临时变量来接收这个值得,这样的话方便用if语句这进行判断
当时立马只想到了用个函数这进行判断,但是再细想一下 ,何不利用for循环第一句来进行判断呢for的格式是(;;;)皆可以省略不写,同时也可以每个分号写入多个式子

int i,j,k;
	k=0;
	for(i=100;i<=300;i++)
	{
		for(j=1,k=0;j<=i;j++)//因为外部嵌套的原因每次执行完后第一层for循环会使i和k再次变回初始值这样就能每次都
		//判断i因数的个数了简单明了
		{
			if(i%j==0)
			{
				k++;
			}
		}
		if (k<=2)
		{
			printf("%d\n",i);
		}
	}
	

输出结果
在这里插入图片描述

posted @ 2019-10-23 22:28  下冰雹的元气博客  阅读(142)  评论(0)    收藏  举报