C语言用函数指针实现一个特别的计算器

目录

函数指针

实现计算器程序的思想

用函数指针调用加减乘除函数

完整代码与运行截图

函数指针

函数指针就是存放函数地址的指针。

函数指针的重要内容:

1.函数指针的使用:函数的类型(指针)(函数的形参类型)= 函数名;注意:函数的形参那里是不需要形参的变量名的。,如果函数没有形参,就不需要填任何东西,void也不行。这么使用完之后,这个指针就是一个函数指针了。

2.函数指针调用函数的方法:****(指针)(实参);注意:这里的指针有两种表达方式,比如定义了一个叫*p 的函数指针,函数的返回类型为空,没有形参。这里的调用就可以写成(*p)();也可以写成p(); 这两种方式都可以写,但为了方便,不推荐使用第一种。

3.函数指针可以作为函数的形参,如果需要传递实参,可以直接传函数名。

实现计算器程序的思想

首先计算器要有最基本的运算,也就是加减乘除,其次我们要写一个简单的菜单,然后让用户进行选择,选择完之后就是输入数字进行运算并且打印出来,考虑到用户可能要进行多次的使用,所以可以加一些循环语句,让用户可以多次使用。

基本上实现计算器我们要考虑的问题都在这了,在这个程序中,最重要的就是用数组指针来调用加减乘除的函数,其它部分都很简单,下面我们来实现这部分的函数。

用函数指针调用加减乘除函数

先看一下代码:

int add(int x, int y) { return x + y; } int sub(int x, int y) { return x - y; } int mul(int x,int y) { return x * y; } int exc(int x, int y) { return x / y; } void func(int *(pf)(int, int y)) { int x = 0; int y = 0; printf("请输入两个数:"); scanf("%d%d", &x, &y); int ret = pf(x, y); printf("结果为:%d\n", ret); }

在func这个函数中,形参是一个函数指针,因为加减乘除返回值,形参都是一样的,所以只要传递不同的函数进去,前面说过形参是函数指针可以直接传递函数名,这样就在func里可以实现对应函数的运算并且打印出来了。

完整代码与运行截图 #define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> void menu() { printf("|-------------------|\n"); printf("|-------1.加--------|\n"); printf("|-------2.减--------|\n"); printf("|-------3.乘--------|\n"); printf("|-------4.除--------|\n"); printf("|-------0.退出------|\n"); printf("|-------------------|\n"); } int add(int x, int y) { return x + y; } int sub(int x, int y) { return x - y; } int mul(int x,int y) { return x * y; } int exc(int x, int y) { return x / y; } void func(int *(pf)(int, int y)) { int x = 0; int y = 0; printf("请输入两个数:"); scanf("%d%d", &x, &y); int ret = pf(x, y); printf("结果为:%d\n", ret); } int main() { int n = 0; int flag = 1; while (flag) { menu(); printf("请选择你想要的运算:"); scanf("%d", &n); switch (n) { case 1: func(add); break; case 2: func(sub); break; case 3: func(mul); break; case 4: func(exc); break; case 0: flag = 0; break; default: printf("选择错误,请重新选择!\n"); break; } } return 0; }

到此这篇关于C语言用函数指针实现一个特别的计算器的文章就介绍到这了,更多相关C语言计算器内容请搜索易知道(ezd.cc)以前的文章或继续浏览下面的相关文章希望大家以后多多支持易知道(ezd.cc)!

推荐阅读

    excel怎么用乘法函数

    excel怎么用乘法函数,乘法,函数,哪个,excel乘法函数怎么用?1、首先用鼠标选中要计算的单元格。2、然后选中单元格后点击左上方工具栏的fx公

    excel中乘法函数是什么?

    excel中乘法函数是什么?,乘法,函数,什么,打开表格,在C1单元格中输入“=A1*B1”乘法公式。以此类推到多个单元。1、A1*B1=C1的Excel乘法公式

    标准差excel用什么函数?

    标准差excel用什么函数?,函数,标准,什么,在数据单元格的下方输入l标准差公式函数公式“=STDEVPA(C2:C6)”。按下回车,求出标准公差值。详细

    cad计算快捷键|cad的计算器快捷键

    cad计算快捷键|cad的计算器快捷键,,cad的计算器快捷键一:常用功能键  F1: 获取帮助  F2: 实现作图窗和文本窗口的切换  F3: 控制是否

    excel常用函数都有哪些?

    excel常用函数都有哪些?,函数,哪些,常用,1、SUM函数:SUM函数的作用是求和。函数公式为=sum()例如:统计一个单元格区域:=sum(A1:A10)  统计多个

    电脑计算器cot|电脑计算器cos

    电脑计算器cot|电脑计算器cos,,1. 电脑计算器coscos键是用来求余弦三角函数的。带有公式显示的科学计算器,先按cos键,然后在后面的括号内输