C语言:函数指针

定义加、减、乘、除四个函数

用键盘录入三个数字

前两个表示参与计算的数字

第三个数字表示调用的函数

1.加法 2.减法 3.乘法 4.除法

cs 复制代码
#include<stdio.h>

//先定义一波函数
int add(int num1, int num2) {    //加法函数
	return num1 + num2;
}

int subtract(int num1,int num2){   //减法函数
 
	if (num1 > num2) {
		return num1 - num2;
	}
	return num2 - num2;
}

int mutiply(int num1,int num2) {   //乘法函数

	return num1 * num2;
}

int divide(int num1,int num2) {   //除法函数
	if (num2 == 0) {
		printf("输入数据错误");
		return 0;
	}

	return num1 / num2;
}


int main() {
	//定义一个函数指针数组存储每个函数
	int (*p[4])(int num1, int num2) = { add,subtract ,mutiply ,divide };

	//键盘录入两个数
	int num1;
	int num2;
	printf("请输入两个整数\n");
	scanf("%d%d", &num1, & num2);

	//键盘输入一个数字选择运算方式
	int num3;
	printf("请输入一个数字选择如下\n1.加法   2.减法   3.乘法   4.除法\n");
	scanf("%d", &num3);


	//调用数组的函数
	printf("运算结果为:%d", p[num3 - 1](num1, num2));
	return 0;

}
相关推荐
程序员-King.2 分钟前
day122—二分查找—完成旅途的最少时间(LeetCode-2187)
算法·leetcode·二分查找·双指针
暗之星瞳3 分钟前
线性回归+实例
算法·回归·线性回归
little~钰4 分钟前
整体二分——上
算法
Swift社区10 分钟前
LeetCode 447 - 回旋镖的数量
linux·算法·leetcode
java修仙传18 分钟前
力扣hot100:路径总和III
数据结构·算法·leetcode
deng-c-f22 分钟前
C/C++内置库函数(3):future、promise的用法
c语言·开发语言·c++
喵了meme25 分钟前
Linux学习日记18:线程的分离
linux·运维·c语言·学习
lang2015092827 分钟前
Sentinel黑白名单授权控制详解
java·算法·sentinel
小O的算法实验室37 分钟前
2023年IEEE TIV,GA-LNS算法+直升机救援调度,深度解析+性能实测
算法·论文复现·智能算法·智能算法改进
foundbug99942 分钟前
Delta并联机器人正逆解实现
算法·机器人