关于C语言的问题,刚刚开始学,不是很会,帮帮忙啊

来源:百度知道 编辑:UC知道 时间:2024/09/21 19:29:28
N个数排序:
题目: 输入一个正整数N和N个整数,将它们按从小到大的顺序进行排序后输出。
输入要求: 输入一个正整数N(1≤N≤100)和N个整数,用空格分隔。
输出要求:将这N个数按从小到大的顺序重新输出,用逗号分隔。
输入示例:
10 -4 5 12 88 23 -9 2 0 8 10
输出示例:
-9,-4,0,2,5,8,10,12,23,88
这道题目我已经想了两个礼拜了,总是出现问题,谢谢大家拉~~

楼主,其实我也是这么认为的
程序重要的是算法,有了算法还怕写不出代码来??
如果你确实要的话
我写了一段,用的是选择法排列的
我的思路是这样的:
1: 输入N个数放入数组a中;
2: 循环, i从1到N 执行
1) p=i;
2) 循环, j从i+1到N 执行
a: 判断,若 a[j]<a[p] 则 p=j;
3) 若 p!=i 则
a: temp=a[p];
b: a[p]=a[i];
c: a[i]=temp;
3: 输出结果.
代码如下:
void inputdata(int a[],int n)
{
int i;
printf("\nPlease input data a[]:\n");
for(i=0;i<n;i++)
scanf("%d",&a[i]);
return;
}
void selectsort(int a[],int n)
{
int i,j,p,temp;
for(i=0;i<n-1;i++)
{
p=i;
for(j=i+1;j<n;j++)
if(a[j]<a[p]) p=j; /* p始终指向小数的下标 */
if(p!=i)
{
temp=a[p];
a[p]=a[i];
a[i]=temp;
}
}
return;
}
outputdata(a,n)
{
int i;
printf("\nThe sort after number: