C语言写筛选法求100以内的素数

新手刚学C现学到数组这题做不来啊做不来高手帮我找找错#include<stdio.h>voidmain(){inta[99],i=0,j=0,num=2,temp=99;... 新手刚学C 现学到数组
这题做不来啊做不来
高手帮我找找错
#include <stdio.h>
void main()
{
int a[99],i=0,j=0,num=2,temp=99;
while (num<=100)
{
a[i]=num;
num++;
i++;
}
i=0;
num=2;
while (num<=50)
{
i=0;
j=0;
while (i<=temp)
{
if (a[i]%num!=0)
{
a[j]=a[i];
j++;
}
i++;
}
temp=j-1;
}
while (i<=j)
{
printf("%d\n",a[i]);
i++;
}
}
展开
 我来答
蓝天88碧海
2010-09-19
知道答主
回答量:8
采纳率:0%
帮助的人:0
展开全部
不用你那么复杂。

int i,j,k=0;
for(i=2;i<=100;i++)
for(j=2;j<=i;j++)
{
if(i/j==0)
break;
}
if(i==j)
{
a[k++]=i;
}
02230838
2010-09-19 · TA获得超过2067个赞
知道小有建树答主
回答量:759
采纳率:0%
帮助的人:1131万
展开全部
不知道你要干什么,不过是死循环。在这里:
while (num<=50)
{
i=0;
j=0;
while (i<=temp)
{
if (a[i]%num!=0)
{
a[j]=a[i];
j++;
}
i++;
}
temp=j-1;
}
这里头num没有动过,进来之后就肯定死循环了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式