题要求将输入的任意3个整数从小到大输出。 输入格式: 输入在一行中给出3个整数,其间以空格分隔。 输出格式: 在一行中将3个整数从小到大输出,其间以“->”相连
时间: 2024-05-15 12:08:33 浏览: 98
这道题目要求将输入的任意3个整数从小到大输出,可以使用冒泡排序的方法来实现。具体思路是:先将输入的三个整数存储到数组中,然后使用冒泡排序将它们从小到大排序,最后按照要求输出即可。
以下是代码实现:
```
#include <iostream>
using namespace std;
int main() {
int a[3];
for (int i = 0; i < 3; i++) {
cin >> a[i];
}
for (int j = 0; j < 3; j++) {
for (int i = 0; i < 3 - 1 - j; i++) {
if (a[i] > a[i + 1]) {
// 交换两个数
int temp = a[i];
a[i] = a[i + 1];
a[i + 1] = temp;
}
}
}
for (int i = 0; i < 3; i++) {
if (i == 2) {
cout << a[i];
} else {
cout << a[i] << "->";
}
}
return 0;
}
```
相关问题
本题要求将输入的任意 3 个整数从小到大输出。 输入格式: 输入在一行中给出 3 个整数,其间以空格分隔。 输出格式: 在一行中将 3 个整数从小到大输出,其间以“->”相连
这道题目要求将输入的任意3个整数从小到大输出,可以使用选择排序的思想,将三个数进行比较,找到最小值,然后将最小值放在第一个位置,再在剩下的两个数中找到最小值,放在第二个位置,最后剩下的数就是最大值,放在第三个位置即可。以下是三个不同语言的代码实现:
C++代码实现:
```
#include <iostream>
using namespace std;
int main() {
int a[3];
for (int i = 0; i < 3; i++) {
cin >> a[i];
}
for (int i = 0; i < 2; i++) {
for (int j = i + 1; j < 3; j++) {
if (a[i] > a[j]) {
int temp = a[i];
a[i] = a[j];
a[j] = temp;
}
}
}
cout << a[0] << "->" << a[1] << "->" << a[2]; return 0;
}
```
Python代码实现:
```
a = list(map(int, input().split()))
a.sort()
print(str(a[0]) + "->" + str(a[1]) + "->" + str(a[2]))
```
Java代码实现:
```
import java.util.Scanner;
import java.util.Arrays;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int[] a = new int[3];
for (int i = 0; i < 3; i++) {
a[i] = sc.nextInt();
}
Arrays.sort(a);
System.out.println(a[0] + "->" + a[1] + "->" + a[2]);
}
}
```
本题要求将输入的任意3个整数从小到大输出。 输入格式: 输入在一行中给出3个整数,其间以空格分隔。 输出格式: 在一行中将3个整数从小到大输出,其间以“->”相连
以下是C语言的代码实现:
```
#include <stdio.h>
int main()
{
int a, b, c, t;
scanf("%d %d %d", &a, &b, &c);
if (a > b) {
t = a;
a = b;
b = t;
}
if (a > c) {
t = a;
a = c;
c = t;
}
if (b > c) {
t = b;
b = c;
c = t;
}
printf("%d->%d->%d", a, b, c);
return 0;
}
```
解释:首先读入三个整数,然后使用三个if语句进行排序,最后输出排序后的结果。
--相关问题--:
1. 请问这段代码中的if语句是如何实现排序的?
2. 如果要输入5个整数并进行排序,应该如何修改代码?
阅读全文