任意输入10个整数的数列,先将整数按照从大到小的顺序进行排序,然后输入一个整数插入到数列中,使数列保持从大到小的顺序。
#include <stdio.h>
void mop(int n, int a[]);
int main(void) {
int a[11], i, j, temp;
printf("请输入10个整数:");
for (i = 0; i < 10; i++) {
scanf("%d", &a[i]);
}
printf("从大到小排序结果为:");
mop(9, a); //调用函数
printf("\n再输入一个整数:");
scanf("%d", &a[10]);
printf("再次从大到小排序结果为:");
mop(10, a);
printf("\n");
}
/* 冒泡排序函数 */
void mop(int n, int a[]) {
int temp, i, j;
for (i = 0; i < n; i++) {
for (j = 0; j < n - i; j++) {
if (a[j] < a[j + 1]) {
temp = a[j];
a[j] = a[j + 1];
a[j + 1] = temp;
}
}
}
//遍历数组
for (i = 0; i < n + 1; i++) {
printf("%d ", a[i]);
}
}