用c++写定义一个包含 10 个整数的整数数组 a,从键盘输入 9个元素,并将这9个数组元素进行升序排列。再从键盘输入一个整数,将该整数插入到数组a中,使数组a中的数据仍然有序。例如原有元素:23456781112,如果从键盘输入一个整数 10,找到对应的位置插入,数组元素为:2345678101112仍然有序
时间: 2023-03-24 12:03:30 浏览: 87
可以回答这个问题。以下是代码:
#include <stdio.h>
int main() {
int a[10], i, j, temp, num;
// 从键盘输入9个元素
printf("请输入9个整数:\n");
for (i = ; i < 9; i++) {
scanf("%d", &a[i]);
}
// 对9个元素进行升序排列
for (i = ; i < 8; i++) {
for (j = i + 1; j < 9; j++) {
if (a[i] > a[j]) {
temp = a[i];
a[i] = a[j];
a[j] = temp;
}
}
}
// 从键盘输入一个整数
printf("请输入一个整数:\n");
scanf("%d", &num);
// 将该整数插入到数组a中,使数组a中的数据仍然有序
for (i = 8; i >= ; i--) {
if (a[i] > num) {
a[i+1] = a[i];
} else {
break;
}
}
a[i+1] = num;
// 输出数组a
printf("插入后的数组a为:\n");
for (i = ; i < 10; i++) {
printf("%d ", a[i]);
}
printf("\n");
return ;
}
阅读全文