#includestdiohint main int n; scanfd&n; int numn; forint i=0;in;i++ scanfd&numi; forint i=0;in;i++ int bushu=0; ifnumi!=-1 int n=
这个程序有几个问题:
-
在内层的循环中,
for(int l=0;l<bushu;++i)语句中的++i应该是++l,否则会导致l一直增加,导致内层循环无法结束。 -
在最后的
for(int i ;num[i]==-1;i++)语句中,没有给i赋初值,应该改为for(int i=0;num[i]==-1;i++)。 -
在最后的输出部分,应该在每个数字后面加上空格或换行符,否则输出结果会连在一起。
-
在内层的循环中,需要加上判断
m是否越界的条件,否则可能导致数组越界。 -
在排序部分,应该将外层循环的条件改为
c<n-1,而不是c<n,否则可能会导致数组越界。 -
在最后的输出部分,应该将输出的数字用
printf("%d ",num[i])而不是printf("%d",num[i]),否则会导致输出结果连在一起。 -
在最后的输出部分,应该加上换行符
printf("\n"),否则输出结果会连在一起。
这些是我发现的问题,可能还有其他问题。建议在编译和运行程序之前先进行调试和测试。
原文地址: https://www.cveoy.top/t/topic/ikcx 著作权归作者所有。请勿转载和采集!