c语言用引用调用求3个整数的最大值,最小值,平均值
时间: 2023-05-23 12:03:09 浏览: 116
这是一个常见的 C 语言题目,我们可以用指针作为参数实现引用调用:
```c
#include <stdio.h>
#include <stdlib.h>
void get_max_min_avg(int* a, int* b, int* c, int* max, int* min, float* avg) {
*max = *a > *b ? (*a > *c ? *a : *c) : (*b > *c ? *b : *c);
*min = *a < *b ? (*a < *c ? *a : *c) : (*b < *c ? *b : *c);
*avg = (*a + *b + *c) / 3.0;
}
int main() {
int a, b, c, max, min;
float avg;
printf("请输入三个整数:\n");
scanf("%d%d%d", &a, &b, &c);
get_max_min_avg(&a, &b, &c, &max, &min, &avg);
printf("最大值:%d\n", max);
printf("最小值:%d\n", min);
printf("平均值:%.2f\n", avg);
return 0;
}
```
当输入 1、2、3 时输出:
```
最大值:3
最小值:1
平均值:2.00
```
注意,这里使用了指针的比较运算符,如 `*a > *b`,这是因为指针运算符 `*` 的优先级比较低,需要加上括号。
阅读全文