题目描述
给你N个整数,请你从小到大输出。
输入描述:
首先是一个整数K,表示有K组数据。
接下来是以回车分隔的K组数据,每组数据首先以一个整数N开头(1<N<100),表示该组数据中包含的整数个数,然后是以空格分隔的N个整数。
输出描述:
对每组数据按要求从小到大输出,组内整数之间隔一个空格,组与组之间以回车分隔。
要求
请发挥你的所学,使用指针技术编程。
输入样例
3
6 1 5 4 3 2 0
5 8 5 2 10 3
2 2 2
输出样例
0 1 2 3 4 5
2 3 5 8 10
2 2
代码如下:
#include<stdio.h>
int main()
{
int K;
scanf("%d",&K);
while(K>0)
{
int N;
scanf("%d",&N);
int a[N];
for(int i=0;i<N;i++)
scanf("%d",&a[i]);
for(int i=0;i<N-1;i++)
{
int min=i;
for(int j=i+1;j<N;j++)
{
if(a[min]>a[j])
min=j;
}
if(min!=i)
{
int temp=a[min];
a[min]=a[i];
a[i]=temp;
}
}
for(int i=0;i<N-1;i++)
printf("%d ",a[i]);
printf("%d\n",a[N-1]);
K--;
}
return 0;
}