用c语言输入在一行中给出3个整数,其间以空格分隔。 输出格式: 在一行中将3个整数从小到大输出,其间以“->”相连。 输入样例: 4 2 8
时间: 2024-10-02 19:04:21 浏览: 50
在C语言中,你可以使用标准输入流`scanf`函数来获取用户输入的三个整数,并使用数组或动态内存来存储这些值。然后,对数组进行排序并按照指定格式输出。以下是相应的程序代码:
```c
#include <stdio.h>
#include <stdlib.h> // 为了使用qsort
// 定义结构体存储整数及其下标
typedef struct {
int value;
int index;
} IntWithIndex;
// 比较两个整数结构体的大小,用于排序
int compare(const void *a, const void *b) {
IntWithIndex *ia = (IntWithIndex *) a;
IntWithIndex *ib = (IntWithIndex *) b;
return ia->value - ib->value; // 如果值小,则返回负,反之则正
}
int main() {
int numbers[3]; // 假设最多输入3个整数
IntWithIndex array[3];
// 输入3个整数
for (int i = 0; i < 3; i++) {
scanf("%d", &numbers[i]);
array[i].value = numbers[i];
array[i].index = i;
}
// 对数组按值排序
qsort(array, sizeof(array) / sizeof(array[0]), sizeof(IntWithIndex), compare);
// 输出排序后的结果
printf("%d -> %d -> %d\n", array[0].value, array[1].value, array[2].value);
return 0;
}
```
阅读全文