C语言中怎么1到1000所有的质数

#include<conio.h>
main()
{
int a,i;
printf("素数:\n");
for(a=2;a<=1000;a++)
{
for (i=2;i<=(a-1);i++)
if (a%i==0)
break;
if (i>=a)
{
printf("%d\n",a);
}
}
getch();
}
哪里不对啊

1、缺一个#include"stdio.h";
2、里面有汉语标点符号,如if (a%i==0)(这个是汉语的),for(a=2;a<=1000;a++)(;是汉语的)
3、我的环境稍有不同,是devc++,修改粘贴如下:
#include<conio.h>
#include"stdio.h"
int main()
{
int a,i;
printf("素数:\n");
for(a=2;a<=1000;a++)
{
for (i=2;i<=(a-1);i++)
{if(a%i==0)
break;}
if (i>=a)
{
printf("%d\n",a);
}
}
getchar();
return 0;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-10-17
回答:
#include<stdio.h>
int main()
{
int a,i;
printf("素数:\n");

for(a=2; a<=1000; a++)
{
for (i=2;i<=(a-1);i++)
if (a%i==0)
break;
if (i>=a)
{
printf("%d\n",a);
}
}
return 0;
}
第2个回答  2019-02-09
1、缺一个#include"stdio.h";
2、里面有汉语标点符号,如if
(a%i==0)(这个是汉语的),for(a=2;a<=1000;a++)(;是汉语的)
3、我的环境稍有不同,是devc++,修改粘贴如下:
#include<conio.h>
#include"stdio.h"
int
main()
{
int
a,i;
printf("素数:\n");
for(a=2;a<=1000;a++)
{
for
(i=2;i<=(a-1);i++)
{if(a%i==0)break;}
if
(i>=a)
{
printf("%d\n",a);
}
}
getchar();
return
0;
}
第3个回答  2011-10-17
第二个for那里有问题,改成
for (i=2;i<=(a-1);i++)
{
if (a%i==0)
break;
if (i>=(a+1)/2)
printf("%d\n",a);
}追问

提示说第六行错了

追答

第六行,你的分号错了,是英文的分号

第4个回答  2021-03-20
#include<iostream>
相似回答