C语言:编写一个程序,实现冒泡排序,将输入的n个整数按降序进行排序,并输出。

编写一个程序,实现冒泡排序,将输入的n个整数按降序进行排序,并输出。
输入:第一行为正整数N,表示有N组输入;每组输入包含两行,第一行为整数个数n,第二行为n个整数。
输出:每组输入对应一行输出,输出降序排序后的整数,整数间用空格隔开,最后一个整数后无空格。

注意:使用冒泡排序;使用指针!!!对数组元素进行操作。

样例输入

3
6
1 2 3 4 5 6
5
84 6768 48 878 8
3
528 98 40

样例输出

6 5 4 3 2 1
6768 878 84 48 8
528 98 40

如图所示:



short:修饰int,短整型数据,可省略被修饰的int。(K&R时期引入)

long:修饰int,长整型数据,可省略被修饰的int。(K&R时期引入)

long long:修饰int,超长整型数据,可省略被修饰的int。(C99标准新增)

signed:修饰整型数据,有符号数据类型。(C89标准新增)

unsigned:修饰整型数据,无符号数据类型。(K&R时期引入)

restrict:用于限定和约束指针,并表明指针是访问一个数据对象的唯一且初始的方式。(C99标准新增)


扩展资料:

for循环结构是c语言中最具有特色的循环语句,使用最为灵活方便,它的一般形式为:

for循环体语句 。(其中;不能省略)

表达式1为初值表达式,用于在循环开始前为循环变量赋初值。

表达式2是循环控制逻辑表达式,它控制循环执行的条件,决定循环的次数。

表达式3为循环控制变量修改表达式,它使for循环趋向结束。

循环体语句是在循环控制条件成立的情况下被反复执行的语句。

但是在整个for循环过程中,表达式1只计算一次,表达式2和表达式3则可能计算多次,也可能一次也不计算。循环体可能多次执行,也可能一次都不执行。

先执行表达式2,然后执行循环结构,最后表达式3,一直这样循环下去。

for循环语句是c语言种功能最为强大的语句,甚至在一定程度上可以代替其他的循环语句。

参考资料来源:百度百科-c语言

温馨提示:内容为网友见解,仅供参考
第1个回答  2015-05-25
#include <stdio.h>

const int MAXSIZE = 100;

int main() {
int i,j,t,n,N,a[MAXSIZE];
scanf("%d",&N);
while(N--) {
scanf("%d",&n);
for(i = 0; i < n && i < MAXSIZE; ++i)
scanf("%d",&a[i]);
for(i = 0; i < n - 1; ++i) {
for(j = i + 1; j < n; ++j) {
if(a[i] < a[j]) {
t = a[i];
a[i] = a[j];
a[j] = t;
}
}
}
for(i = 0; i < n; ++i)
printf("%d ",a[i]);
printf("\n");
}
return 0;
}

本回答被提问者和网友采纳
相似回答