C语言的数组元素从小到大排序问题
#include<stdio.h>main(){inta[11],i,j=0,k;printf("pleaseenter10number:");for(i=0;i<10;...
#include<stdio.h>
main()
{int a[11],i,j=0,k;
printf("please enter 10 number:");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(i=0;i<9;i++)
{
for(i=j+1;i<10;i++)
if(a[i]<a[j])
{
k=i;i=j;j=k;
}
i=j;j++;
}
for(i=0;i<10;i++)
printf("%-3d",a[i]);
}
求大神帮我看看有什么问题?为什么不能排序啊 展开
main()
{int a[11],i,j=0,k;
printf("please enter 10 number:");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(i=0;i<9;i++)
{
for(i=j+1;i<10;i++)
if(a[i]<a[j])
{
k=i;i=j;j=k;
}
i=j;j++;
}
for(i=0;i<10;i++)
printf("%-3d",a[i]);
}
求大神帮我看看有什么问题?为什么不能排序啊 展开
2个回答
展开全部
如果是冒泡
请将
for(i=j+1;i<10;i++)
if(a[i]<a[j])
{
k=i;i=j;j=k;
}
i=j;j++;
改为
for(j=0;j<9-i;j++)
if(a[j]>a[j+1])
{
k=a[j];a[j]=a[j+1];a[j+1]=k;
}
请将
for(i=j+1;i<10;i++)
if(a[i]<a[j])
{
k=i;i=j;j=k;
}
i=j;j++;
改为
for(j=0;j<9-i;j++)
if(a[j]>a[j+1])
{
k=a[j];a[j]=a[j+1];a[j+1]=k;
}
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询