我用VC++6.0编程,写好的程序为什么一运行就变成了这样

//文件名:第五章第3题.cpp//埃拉托色尼筛选法(2~1000)#include<iostream>usingnamespacestd;intmain(){inta[... //文件名:第五章第3题.cpp//埃拉托色尼筛选法(2~1000)#include<iostream>using namespace std;int main(){ int a[999], b[999], i, k, j = 0, n,tmp; for (n = 2, i = 0; i < 999; ++n, ++i ) a[i] = n; for (i = 0; i < 999; ++i) { if (a[i] == 0) continue; else tmp = a[i]; for (k = i + 1; k < 999; ++k) { if (a[k] % tmp == 0) { b[j] = a[k]; ++j; a[k] = 0;} } } cout << "2~1000范围内,素数有:\n" ; for (i = 0; i < 999; ++i) if (a[i] != 0) cout<<a[i]<<'\t'; cout << endl; cout << "2~1000范围内,合数有:\n"; for (i = 0; i < j; ++i) cout << b[i] <<'\t'; cout << endl; return 0; } 展开
 我来答
zxy03123
2016-10-31 · TA获得超过576个赞
知道小有建树答主
回答量:506
采纳率:71%
帮助的人:249万
展开全部
首先你需要把文件名第五章第三题改为英文,例如;ex5_3.cpp
追问
之前我用中文名做文件名没问题啊
追答
把 if (a[k] % tmp == 0),改为if (a[k] % tmp == 0 && a[k]!=0)。因为除了分母不能为零,还需要分子不为零,要不重复了,例如0%1=0。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
归悦欣cf
2016-10-30 · TA获得超过1444个赞
知道大有可为答主
回答量:4250
采纳率:59%
帮助的人:1398万
展开全部
这是控制台程序.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式