使用指向变量的指针变量做函数形参,编写函数求两个数的大于小于等于关系
时间: 2024-02-28 10:56:46 浏览: 118
指向函数的指针运用
好的,下面是代码实现:
```c
#include <stdio.h>
void compare(int a, int b, int* pmax, int* pmin, int* pequal) {
if (a > b) {
*pmax = a;
*pmin = b;
} else if (a < b) {
*pmax = b;
*pmin = a;
} else {
*pequal = 1;
*pmax = a;
*pmin = b;
}
}
int main() {
int x, y, max, min, equal;
printf("请输入两个整数:");
scanf("%d %d", &x, &y);
compare(x, y, &max, &min, &equal);
if (equal) {
printf("%d 等于 %d\n", max, min);
} else {
printf("%d 大于 %d\n", max, min);
}
return 0;
}
```
函数 `compare` 接受两个整数 `a` 和 `b`,以及三个指针变量 `pmax`、`pmin` 和 `pequal` 作为形参,分别用于保存两个数的最大值、最小值以及是否相等的信息。在函数内部,我们通过比较 `a` 和 `b` 的大小关系,来确定它们的最大值和最小值,并根据它们是否相等来设置 `pequal` 的值。最后,将 `max`、`min` 和 `equal` 的值通过指针变量返回给调用者。
在 `main` 函数中,我们首先从用户处获取两个整数 `x` 和 `y`,然后调用 `compare` 函数来求它们的大小关系。最后,根据返回值打印出相应的信息。
阅读全文