这程序怎么写的。。 s都没初始化 你应该循环里加句s=a吧,而且数组k分配空间不够 改大点。
调通了啊。。
#include
#include
int main()
{int k[100];
int i,a,n,s;
for(a=2;a<=1000;a++)
{n=0;
s=a;
for(i=1;i if((a%i)==0)
{n++;
s=s/i;
k[n]=i;
}
if(s==0)
{printf("\n%d是一个“完数”,它的因子是:",a);
for(i=1;i
printf("%d\n",k[n]);
}
}
return 0;
}
看不到…不过我可以猜一下。
turbo c支持的c语言语法非常古老且不标准,而linux的编译器至少也是gcc3了,一般都是gcc4了,语法上有所不同,turbo c里面通过的代码不一定能在现代编译器上通过的。修改一下不标准的地方吧。就比如main函数,标准是in main(int argc,char **argv),不返回结果是绝对不行的。
红旗liunx在中国最常用