急求一道C语言代码,老大们,帮忙呀

来源:百度知道 编辑:UC知道 时间:2024/09/24 11:34:19
老大们,我想了2天了,实在想不出来。也许并不难,只是我的知识还不够,所以编不出来。帮帮忙呀
题目是这样的:
输入n个数(int型的),要求从小到大输出。
注意了,这里的n是任意的。也就是说,一旦程序编好,在执行的时候可以任意输入数的个数。

用简单的冒泡法排序,就可以了!

#include<stdio.h>

#define N 100

main()
{
int a[N],n,j,i,temp;

printf("输入数的个数:");
scanf("%d",&n);

printf("输入%d个数:",n);
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
}

for(i=0;i<n;i++)
{
for(j=0;j<n-i-1;j++)
{
if(a[j]>a[j+1])
{
temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
}
}
}

for(i=0;i<n;i++)
{
printf("%2d ",a[i]);
}
printf("\n");
}

1.在网上下本C数据结构的书。
2.找到“排序”相关的章节。
3.找到你要的代码。

到一些校园网去找找可能会有

呵呵,冒泡排序比较麻烦,而且可能超时,建议用qsort函数,具体用法为:
在main()函数之前写下:
int cmp(const void *a,const void *b)
{
return ( *(int*)a - *(int*)b );
}

在main()函数中定义数组a[1000]

写下qsort(a,1000,sizeof(a[0]),cmp);(1000为