问题遇到的现象和发生背景 参考下页C代码,编写函数CreatePrimes(PN),存储从3开始到小于2^16的所有素数到素数表prime,并输出相关信息。表中数值以半字存储。素数个数通过寄存器$a0传出。
问题相关代码,请勿粘贴截图
运行结果及报错内容
#include <iostream>
using namespace std;
unsigned short prime[7000]={3};
int main(void)
{
int i,j,k;
for(i=5,j=1;i<65536;i+=2)
{
for(k=3;k*k<=i;k+=2)if(i%k==0)break;
if(k*k>i)prime[j++]=i;
}
cout<<j<<" primes created. The last 10 primes is:\n";
for(i=j-10;i<j;i++)cout<<prime[i]<<" ";
cout<<"\n";
return 0;
}