题目描述
少一点套路,多一点真诚(手动比心)。不像别的题一样花里胡哨的,这道题就和题目名字一样冒泡排序从小到大输出即可。如果你连这个都不会那可要下去好好学习一番咯。
输入
第一行T(1 <= T <= 100)表示样例个数
对于每个样例
第一行一个整数N(1 <= N <= 100)表示数字个数
接下来N行每行一个数字Ai(1 <= Ai <= 100)表示所要排序的数字
输出
对于每个样例输出N行从小到大排序后的数字。
样例输入
1
5
2
3
1
4
5
样例输出
1
2
3
4
5
分析:这是我们蓝桥杯校赛热身赛上的一个题,难也不难,就是写出来警醒一下自己当时没做出来,成长路上还需多多历练
冒泡排序个人理解最关键的就是双循环排序,至于书上讲得早忘完了,不过,我觉得应该还有可以降低时间复杂度的写法,以后发现了再更新吧
代码如下:
#include<stdio.h>
int main()
{
int t,n,i,j;
int a[100];
scanf("%d",&t);
for(i=0;i<t;i++)
{
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
}
for(i=0;i<n;i++)
for(j=0;j<n;j++)
{
if(a[i]<a[j])
{
int temp=a[i];
a[i]=a[j];
a[j]=temp;
}
}
for(i=0;i<n;i++)
{
printf("%d ",a[i]);
}
}
return 0;
}