c++写一个程序::从键盘输入3个整数,将这3个数由大到小进行排序后输出。
时间: 2024-06-06 08:07:13 浏览: 90
#include <stdio.h>
int main() {
int a, b, c;
printf("请输入三个整数:\n");
scanf("%d%d%d", &a, &b, &c);
if (a >= b && a >= c) {
if (b >= c) {
printf("%d %d %d", a, b, c);
} else {
printf("%d %d %d", a, c, b);
}
} else if (b >= a && b >= c) {
if (a >= c) {
printf("%d %d %d", b, a, c);
} else {
printf("%d %d %d", b, c, a);
}
} else {
if (a >= b) {
printf("%d %d %d", c, a, b);
} else {
printf("%d %d %d", c, b, a);
}
}
return 0;
}
相关问题
用C++写:描述: 输入一组≥0的整数,① 从大到小排序后输出; ② 若排序后有连续整数,只输出连续数中最大和最小的两个数 (注意:输入的所有整数应各不相同,即:不用考虑两个整数相同的情况)。 输入:从键盘输入,一组≥0的整数,不考虑非法输入。 输出:排序后数据,各个整数之间可以以逗号(",")分隔。
以下是用C++实现的代码:
```cpp
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main() {
vector<int> nums;
int num;
while (cin >> num) {
nums.push_back(num);
}
sort(nums.begin(), nums.end(), greater<int>());
bool is_consecutive = false;
int start, end;
for (int i = 0; i < nums.size(); i++) {
if (i == 0 || nums[i] != nums[i-1] - 1) {
if (is_consecutive) {
cout << start << "," << end << ",";
is_consecutive = false;
}
cout << nums[i] << ",";
} else {
if (!is_consecutive) {
start = nums[i];
is_consecutive = true;
}
end = nums[i];
}
}
if (is_consecutive) {
cout << start << "," << end << ",";
}
return 0;
}
```
运行程序后,输入一组整数,以空格分隔。例如:
```
10 20 30 40 50 70 80 90
```
程序会将这组整数从大到小进行排序,并输出结果:
```
90,80,70,50,40,30,20,10,
```
其中,连续的整数 60 和 70 被合并为 70。
c语言任意从键盘输入10个整数,按从小到大的顺序排列,并输出结果,求C++程序:任意从键盘输入10个整数,按从小到大的顺序排序,并输出结果。...
好的,以下是实现该功能的C++代码:
```c++
#include <iostream>
#include <algorithm>
using namespace std;
int main() {
int arr[10];
cout << "请输入10个整数:" << endl;
for (int i = 0; i < 10; i++) {
cin >> arr[i];
}
// 排序
sort(arr, arr + 10);
// 输出结果
cout << "从小到大排序的结果为:" << endl;
for (int i = 0; i < 10; i++) {
cout << arr[i] << " ";
}
cout << endl;
return 0;
}
```
首先,我们定义一个长度为10的整型数组 `arr`,并依次从键盘输入10个整数存入该数组中。然后,使用 `sort` 函数对数组进行排序。最后,用一个循环输出排序后的结果。
需要注意的是,这里使用了 `algorithm` 头文件中的 `sort` 函数,需要添加相应的头文件。
阅读全文