#include<stdio.h>
int main()
{
int a[]={1,5,2,6,3,7,9,8,0};
int i,j,temp;
for(i=7;i>=0;i--)
{
for(j=0;j<=i;j++)
{
if(a[j]>a[j+1])
{
temp=a[j+1];
a[j]=temp;
a[j+1]=a[j];
}
}
}
for(i=0;i<10;i++)
{
if(i!=9)
printf("%d,",a[i]);
else
printf("%d",a[i]);
}
return 0;
}
你的输出结果是:
0,0,0,0,0,0,0,0,0,4199432
有两个地方错误:
#include<stdio.h>
int main()
{
int a[]={1,5,2,6,3,7,9,8,0};
int i,j,temp;
for(i=7;i>=0;i--)
{
for(j=0;j<=i;j++)
{
if(a[j]>a[j+1])
{
// 替换错误
// temp=a[j+1];
// a[j]=temp;
// a[j+1]=a[j];
temp = a[j];
a[j] = a[j+1];
a[j+1] = temp;
}
}
}
// 长度错误
// for(i=0;i<10;i++)
for(i=0;i<9;i++)
{
if(i!=9)
printf("%d, ",a[i]);
else
printf("%d",a[i]);
}
return 0;
}不好意思,下面的 shuzu 是 a 刚刚写错了,拜托你们了,帮忙看一下