这段C语言代码为什么运行结果输出数组里老是有一个位置是乱码?
核心代码有三段,第一段循环数组赋值,第二段冒泡排序,第三段循环输出数组。格式应该比较清晰。希望有时间的高手能帮我看看,我实在是DEBUG不出来了。第一段和第三段连在一起没...
核心代码有三段,第一段循环数组赋值,第二段冒泡排序,第三段循环输出数组。格式应该比较清晰。希望有时间的高手能帮我看看,我实在是DEBUG不出来了。第一段和第三段连在一起没问题,第二段和第三段连在一起也没问题。第二段单独仔细看过,没问题。求告知问题到底出在哪里!!!!
#include<stdio.h>
main()
{ int a,b,c,balboa[100],i,j,k,z;
while(scanf("%d",&a)!=EOF){
if(a==0)
return 0;
else{
for(b=0;b<a;b++){
scanf("%d",&c);
if(c<0)
c=c*(-1);
balboa[b]=c;
}
for(i=0;i<a;i++){
for(j=0;j<a;j++){
if(balboa[j]<balboa[j+1]){
k=balboa[j];
balboa[j]=balboa[j+1];
balboa[j+1]=k;
}
}
}
for(z=0;z<a;z++){
if(z!=(a-1))
printf("%d ",balboa[z]);
else
printf("%d\n",balboa[z]);
}
}
}
return 0;
} 展开
#include<stdio.h>
main()
{ int a,b,c,balboa[100],i,j,k,z;
while(scanf("%d",&a)!=EOF){
if(a==0)
return 0;
else{
for(b=0;b<a;b++){
scanf("%d",&c);
if(c<0)
c=c*(-1);
balboa[b]=c;
}
for(i=0;i<a;i++){
for(j=0;j<a;j++){
if(balboa[j]<balboa[j+1]){
k=balboa[j];
balboa[j]=balboa[j+1];
balboa[j+1]=k;
}
}
}
for(z=0;z<a;z++){
if(z!=(a-1))
printf("%d ",balboa[z]);
else
printf("%d\n",balboa[z]);
}
}
}
return 0;
} 展开
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询