用函数和指针完成下述程序功能:有两个整数m和口,由用户输入1,2或了。如输入1, 程序就给出m和n中大者,输入2,就给出m和口中小者,输入了,则求川与n之和。
时间: 2023-06-20 17:04:39 浏览: 107
以下是使用函数和指针实现的程序:
```c
#include <stdio.h>
void max_min_sum(int m, int n, int choice, int *result) {
if (choice == 1) {
*result = (m > n) ? m : n;
} else if (choice == 2) {
*result = (m < n) ? m : n;
} else {
*result = m + n;
}
}
int main() {
int m, n, choice, result;
printf("请输入两个整数m和n:");
scanf("%d%d", &m, &n);
printf("请输入1、2或3进行选择:\n");
printf("1.求m和n中的大者\n");
printf("2.求m和n中的小者\n");
printf("3.求m和n之和\n");
scanf("%d", &choice);
max_min_sum(m, n, choice, &result);
if (choice == 1) {
printf("%d和%d中的大者是%d\n", m, n, result);
} else if (choice == 2) {
printf("%d和%d中的小者是%d\n", m, n, result);
} else {
printf("%d和%d之和是%d\n", m, n, result);
}
return 0;
}
```
程序中的 `max_min_sum` 函数接收四个参数:两个整数 `m` 和 `n`,用户的选择 `choice`,以及一个指向结果的指针 `result`。根据用户的选择,函数计算出相应的结果并将其存储在 `result` 指向的位置。
在 `main` 函数中,我们首先读入两个整数 `m` 和 `n`,然后让用户选择需要进行的操作。我们调用 `max_min_sum` 函数来计算结果,并将结果存储在 `result` 变量中。最后,根据用户的选择,我们输出相应的结果。
阅读全文