用C语言写一个程序实现对函数的调用,要调用不同函数需做出不同的选择
时间: 2023-09-25 11:06:50 浏览: 124
### 回答1:
可以使用条件语句(如if-else或switch-case)来实现不同函数的调用。例如:if(选择条件1) {
函数1();
} else if(选择条件2){
函数2();
} else {
函数3();
}
### 回答2:
在C语言中,函数的调用可以通过使用函数指针或者switch语句来实现。
如果选择使用函数指针,首先需要定义一个函数指针变量,指针类型与要调用的函数相匹配。然后,可以根据用户的选择将函数指针变量指向不同的函数。最后,通过调用函数指针来执行相应的函数。
以下是一个示例代码:
```c
#include <stdio.h>
// 声明函数
void function1();
void function2();
void function3();
int main() {
int choice;
printf("请选择调用的函数:\n");
printf("1. 函数1\n");
printf("2. 函数2\n");
printf("3. 函数3\n");
scanf("%d", &choice);
// 定义函数指针
void (*func)();
// 根据选择将函数指针指向不同的函数
switch (choice) {
case 1:
func = function1;
break;
case 2:
func = function2;
break;
case 3:
func = function3;
break;
default:
printf("输入无效!\n");
return 0;
}
// 调用函数
func();
return 0;
}
// 定义函数
void function1() {
printf("函数1被调用!\n");
}
void function2() {
printf("函数2被调用!\n");
}
void function3() {
printf("函数3被调用!\n");
}
```
另一种方式是使用switch语句。在这种情况下,可以根据用户的选择直接调用相应的函数,而不是将函数指针指向函数。每个选项对应一个case语句,在每个case中调用相应的函数。
以下是使用switch语句的示例代码:
```c
#include <stdio.h>
// 声明函数
void function1();
void function2();
void function3();
int main() {
int choice;
printf("请选择调用的函数:\n");
printf("1. 函数1\n");
printf("2. 函数2\n");
printf("3. 函数3\n");
scanf("%d", &choice);
// 根据选择调用相应的函数
switch (choice) {
case 1:
function1();
break;
case 2:
function2();
break;
case 3:
function3();
break;
default:
printf("输入无效!\n");
return 0;
}
return 0;
}
// 定义函数
void function1() {
printf("函数1被调用!\n");
}
void function2() {
printf("函数2被调用!\n");
}
void function3() {
printf("函数3被调用!\n");
}
```
以上两种方法都可以根据用户的选择调用不同的函数。要根据具体需求选择适合的方法。
### 回答3:
要实现对函数的调用,可以使用条件语句来做出不同的选择。下面是一个简单的示例程序:
```c
#include <stdio.h>
// 函数1:计算两个数的和
int sum(int a, int b) {
return a + b;
}
// 函数2:计算两个数的差
int subtract(int a, int b) {
return a - b;
}
// 函数3:计算两个数的积
int multiply(int a, int b) {
return a * b;
}
// 函数4:计算两个数的商
int divide(int a, int b) {
return a / b;
}
int main() {
int num1, num2, choice;
int result;
printf("请输入要计算的两个数:");
scanf("%d %d", &num1, &num2);
printf("请选择要进行的运算:\n");
printf("1. 加法\n");
printf("2. 减法\n");
printf("3. 乘法\n");
printf("4. 除法\n");
scanf("%d", &choice);
switch (choice) {
case 1:
result = sum(num1, num2);
break;
case 2:
result = subtract(num1, num2);
break;
case 3:
result = multiply(num1, num2);
break;
case 4:
result = divide(num1, num2);
break;
default:
printf("选择无效!\n");
return 0;
}
printf("运算结果为:%d\n", result);
return 0;
}
```
在这个程序中,首先要求用户输入两个数。然后展示一个菜单供用户选择要进行的运算。根据用户的选择,通过使用`switch`语句来调用不同的函数进行相应的运算,最后输出运算的结果。
通过这样的方式,我们可以根据不同的选择调用不同的函数,实现了对函数的调用和根据选择的不同进行函数调用的功能。
阅读全文