求1~100中所以的素数,请问各位我这个代码哪里出问题了,应该怎么改,多谢了
问题描述:
#include<stdio.h>
#include<math.h>
int main()
{
int i,j,a[100];
for(i=0;i<100;i++)
a[i]=i+1;
for(i=1;i<100;i++)
{
for(j=2;j<=sqrt(j);j++)
if(a[i]/j==0)break;
printf("%d\t",a[i]);
}
return 0;
}
答
供参考:
#include<stdio.h>
#include<math.h>
int main()
{
int i, j, a[100], flg = 0; //修改
for (i = 0; i < 100; i++)
a[i] = i + 1;
for (i = 1; i < 100; i++)
{
for (j = 2, flg = 0; j <= sqrt(a[i]); j++) //修改
if (a[i] % j == 0) //修改
{
flg = 1; //修改
break;
}
if (!flg) //修改
printf("%d\t", a[i]);
}
return 0;
}
答
#include<stdio.h>
#include<math.h>
int main() {
int i,j,f;
for(i=1; i<100; i++) {
f=1;
for(j=2; j<=sqrt(i); j++)
if(i%j==0) {
f=0;
break;
}
if(f)
printf("%d\t",i);
}
return 0;
}