循环迭代判断\找质数——以每行8个的形式输出100-999内的质数

是很经典的找质数问题呢(我学了好几种语言,学着学着就发现练习里面有找质数)

//以每行8个的形式输出100-999内的质数
//每行输出8个质数(最后一行可以不到8个)
//每个质数的输出格式控制符为“%4d"
//最后一行输完后,输出一个“\n"

#include
#include//这个函数是为了最后的system("pause")的调用的
#include
int main()
{
	int times=1,num=100,i=2;
	for(num=100;num<=999;num++)
	{	
		int k=(int)sqrt((double)num);//这一行一定要放在里面,不然k会固定不变,影响输出结果
		for(i=2;i<=k;i++)
		{
			if(num%i==0)
				break;//跳出循环
		}
		if(i>k)
		{
				if(times<=7)	//8个一组
				{
					printf("%4d",num);
					times+=1;
				}
				else
				{
					printf("%4d",num);	//其实第八个在这里
					printf("\n");		//换行
					times=1;
				}
		}
	}
	printf("\n");
	system("pause");
	return 0;
}

你可能感兴趣的:(C语言入门,c语言,1024程序员节)