c语言输入数子并将数字从大到小排列
时间: 2024-10-21 11:06:49 浏览: 21
在C语言中,你可以通过循环、数组以及比较操作来实现输入一组数字并按照从大到小排序的功能。这里是一个简单的示例:
```c
#include <stdio.h>
#define SIZE 5 // 数组大小
int main() {
int numbers[SIZE], i, temp, maxIndex;
// 输入数字
printf("请输入{}个整数:\n", SIZE);
for (i = 0; i < SIZE; i++) {
scanf("%d", &numbers[i]);
}
// 找出最大值及其索引
maxIndex = i - 1;
for (i = 0; i < SIZE; i++) {
if (numbers[i] > numbers[maxIndex]) {
maxIndex = i;
}
}
// 交换最大值到最后一位
temp = numbers[maxIndex];
numbers[maxIndex] = numbers[SIZE - 1];
numbers[SIZE - 1] = temp;
// 再次找出剩余元素中的最大值,并重复此过程
while (maxIndex != 0) {
maxIndex = i - 1;
for (i = 0; i < SIZE - 1; i++) {
if (numbers[i] > numbers[maxIndex]) {
maxIndex = i;
}
}
temp = numbers[maxIndex];
numbers[maxIndex] = numbers[SIZE - 1];
numbers[SIZE - 1] = temp;
SIZE--;
}
// 输出排序后的数字
printf("数字从大到小排列是:\n");
for (i = 0; i < SIZE; i++) {
printf("%d ", numbers[i]);
}
return 0;
}
```
阅读全文