【PTA】动态内存中数据排序
读入整数N,再读入N个整数,将这N个整数从小到大排序后输出。(不能定义整型数组,用动态内存技术实现)
输入样例:
5
1 5 3 4 2
输出样例:
1 2 3 4 5
#include <stdio.h>
#include <stdlib.h>
void sort(int *a,int n)
{
int i,j,t;
for(i=0;i<n;i++)
{
for(j=i+1;j<n;j++)
{
if(a[i]>a[j])
{
t=a[i];a[i]=a[j];a[j]=t;
}
}
}
}
int main()
{
int N,i,*a;
scanf("%d",&N);
a=(int *)malloc(N*sizeof(int));
for(i=0;i<N;i++)
{
scanf("%d",&a[i]);
}
sort(a,N);
for(i=0;i<N-1;i++)
{
printf("%d ",a[i]);
}printf("%dn",a[i]);
return 0;
}