1、最简单的由 (7条消息) 【练习】如何判断素数_thanksdyana的博客-CSDN博客变换而来。
#include <stdio.h>
int main(){
int n=1;
int i=2;
int m=0;
while (n<100)
{
for (i=2;i<n;i++)
{
if (n%i == 0)
m++;
}
if (m==0)
{
printf ("%d ",n);
}
n++;
}
return 0;
}
2、参考(7条消息) 输出1到1000之间的素数_思为何物的博客-CSDN博客_求1到1000之间的素数
#include<stdio.h>
int main()
{
int i,j,sum=0;
printf("1到1000之间所有素数有:\n");
for(i=2;i<1000;i++) // 外循环,界定循环范围为1-1000
{
for(j=2;j<i;j++)//内层循环用于判断是不是素数,每次外循环开始j都等于2
{
if(i%j==0) //表示i不是素数,break到c16(*)
{
break;
}
}
if(i==j)//表示i是素数,输出该素数;(*i可以被j整除且i!=j,i不是素数不输出)
{
printf("%4d",i); // 参考代码此处是j,虽然不影响结果,但是应该是i更好
sum++;//在输出素数的同时计数
if(sum%10==0)//控制每行输出10个
printf("\n");
}
}
printf("\n\n1到1000之间所有素数个数:%d\n",sum);
return 0;
}
文章中还提到了子函数体,目前没有学到。
反思:对for、while语句掌握不算熟练,尤其是语句与break结合使用的用法不熟练。