这个列举质数的C++程序哪里有问题?(可以运行,但是运行就会报“出现了一个问题,导致程序停止工作”)

2025-02-26 18:47:40
推荐回答(1个)
回答1:

for(m=0,i=a[m];i<=sqrt(n);m++,i=a[m]) 你这里m不做限制吗?m运行到5就越界了。错误就在这里。当然 a[j]=n; 这一句也可能越界,所以简单做法,将定义中的int a[5];修改为int a[100];我这里说的都是伪代码,实际过程中是要考虑开销的。