用c语言写一段代码包含函数和指针完成下述程序功能:有两个整数a和b,由用户输入1,2或3。如输入1,程序就给出a和b中大者,输入2,就给出a和b中小者,输入3,则求a与b之和。
时间: 2024-02-11 18:09:49 浏览: 72
C语言程序设计-求两个整数a与b之和
以下是代码实现:
```c
#include <stdio.h>
void max(int *a, int *b);
void min(int *a, int *b);
void sum(int *a, int *b);
int main() {
int a, b, choice;
printf("Enter two integers: ");
scanf("%d %d", &a, &b);
printf("Enter 1 to find the maximum of a and b\n");
printf("Enter 2 to find the minimum of a and b\n");
printf("Enter 3 to find the sum of a and b\n");
scanf("%d", &choice);
switch (choice) {
case 1:
max(&a, &b);
printf("The maximum of %d and %d is %d\n", a, b, a);
break;
case 2:
min(&a, &b);
printf("The minimum of %d and %d is %d\n", a, b, a);
break;
case 3:
sum(&a, &b);
printf("The sum of %d and %d is %d\n", a, b, a);
break;
default:
printf("Invalid choice\n");
}
return 0;
}
void max(int *a, int *b) {
if (*a < *b) {
*a = *b;
}
}
void min(int *a, int *b) {
if (*a > *b) {
*a = *b;
}
}
void sum(int *a, int *b) {
*a += *b;
}
```
在 `main` 函数中,首先使用 `scanf` 函数获取用户输入的两个整数和选择的操作。然后根据选择的操作调用相应的函数,这里定义了三个函数 `max`、`min` 和 `sum` 分别实现求两个整数的最大值、最小值和和。这些函数都接收两个整型指针作为参数,根据需要对指针所指向的变量进行操作,实现对原始变量的修改。最后打印出结果。
阅读全文