哪位高手帮下忙,谢谢

来源:百度知道 编辑:UC知道 时间:2024/06/12 03:28:13
定义函数void sort(int a[] int n),用冒泡发对数组a中的元素排序。自己定义main函数,并在其中调用sort函数。在main函数输入10个整数,然后调用sort函数完成把10个整数从小到大排序,最后输出排序后结果。

冒泡法排序思路:从第一个数开始依次对相邻两数进行比较,如次序对则不做任何操作;如次序不对则使这两个数交换位置。第一遍的(N-1)次比较后,最大的数已放在最后,第二遍只需考虑(N-1)个数,以此类推直到第(N-1)遍比较后就可以完成排序。另外注意:c语言中的数组元素下标是从0开始的。
void sort(int a[],int n)
{
int i,j,t;
for(i=0;i<n-1;i++) //一共执行n-1次比较
{
for(j=0;j<n-1-i;j++) //第i次进行比较的数要进行n-i次比较,注意i,j是从0开始;
{
if(a[j]>a[j+1])
{
t=a[j+1];
a[j+1]=a[j];
a[j]=t;
}
}
}
printf("\n");
for(k=0;k<10;k++)
{
printf("a[%d]=%d\n",k,a[k]);
}
}
void main()
{
int k,a[10];
for(k=0;k<10;k++)
{
scanf("%d",&a[k]);
}
sort(a,10);
}