用c语言循环输入n个值, 冒泡升序排序,输出,简单选择降序排序,输出
时间: 2023-03-19 15:25:36 浏览: 104
好的,我来回答你的问题。
以下是解决你提出的问题的C语言代码:
```
#include <stdio.h>
int main() {
int n, i, j, temp, a[100];
//输入n个数
printf("请输入要排序的数字个数:");
scanf("%d", &n);
printf("请输入%d个数字:", n);
for (i = 0; i < n; i++) {
scanf("%d", &a[i]);
}
//冒泡升序排序
for (i = 0; i < n - 1; i++) {
for (j = 0; j < n - i - 1; j++) {
if (a[j] > a[j+1]) {
temp = a[j];
a[j] = a[j+1];
a[j+1] = temp;
}
}
}
//输出升序排序结果
printf("升序排序结果为:");
for (i = 0; i < n; i++) {
printf("%d ", a[i]);
}
printf("\n");
//简单选择降序排序
for (i = 0; i < n - 1; i++) {
int max_index = i;
for (j = i + 1; j < n; j++) {
if (a[j] > a[max_index]) {
max_index = j;
}
}
if (max_index != i) {
temp = a[i];
a[i] = a[max_index];
a[max_index] = temp;
}
}
//输出降序排序结果
printf("降序排序结果为:");
for (i = 0; i < n; i++) {
printf("%d ", a[i]);
}
printf("\n");
return 0;
}
```
希望这段代码能够解决你的问题。如果你有更多的问题,请随时提出。
阅读全文