主函数输入3个整数a,b,c,按先大后小的顺序输出。要求用函数处理,而且用指针类型的数据作函数参数的代码
时间: 2024-01-03 22:04:53 浏览: 52
好的,我明白了。以下是符合要求的代码:
```c++
#include <iostream>
using namespace std;
void sort(int* a, int* b, int* c) {
if (*a < *b) {
swap(*a, *b);
}
if (*a < *c) {
swap(*a, *c);
}
if (*b < *c) {
swap(*b, *c);
}
}
int main() {
int a, b, c;
cin >> a >> b >> c;
sort(&a, &b, &c);
cout << a << " " << b << " " << c << endl;
return 0;
}
```
在 `main` 函数中,我们输入了三个整数 `a`、`b`、`c`,然后将它们的地址传递给 `sort` 函数。在 `sort` 函数中,我们使用指针来操作这三个数,将它们按照从大到小的顺序排序。最后,在 `main` 函数中输出排序后的结果。
相关问题
主函数输入3个整数a,b,c,按先大后小的顺序输出。要求用函数处理,而且用指针类型的数据作函数参数的c语言代码
以下是用指针类型的数据作函数参数的c语言代码:
```c
#include <stdio.h>
void order(int *a, int *b, int *c);
int main() {
int a, b, c;
printf("请输入三个整数:\n");
scanf("%d%d%d", &a, &b, &c);
order(&a, &b, &c);
printf("%d %d %d\n", c, b, a);
return 0;
}
void order(int *a, int *b, int *c) {
int temp;
if (*a < *b) {
temp = *a;
*a = *b;
*b = temp;
}
if (*a < *c) {
temp = *a;
*a = *c;
*c = temp;
}
if (*b < *c) {
temp = *b;
*b = *c;
*c = temp;
}
}
```
注意,本程序中的函数 `order` 接收三个指针类型的参数,分别代表三个整数的地址。在函数内部,我们使用指针访问这些整数,并按照先大后小的顺序重新排列它们。最后,我们在主函数中使用排列后的三个整数打印输出。
输入a和b两个整数,按先大后小的顺序输出a和b。要求用函数处理,而且用指针类型的数据作为函数参数
可以使用以下的函数来实现:
void sort(int *a, int *b) {
if (*a < *b) {
int temp = *a;
*a = *b;
*b = temp;
}
}
在主函数中,可以这样调用:
int main() {
int a, b;
scanf("%d %d", &a, &b);
sort(&a, &b);
printf("%d %d", a, b);
return ;
}
这个函数接受两个指向整数的指针作为参数,然后比较它们的值,如果第一个数小于第二个数,就交换它们的值。在主函数中,我们输入两个整数,然后将它们的地址传递给sort函数。最后,我们输出排序后的结果。
阅读全文