C語言運用函式指標陣列實現計算器功能

2022-09-25 17:12:09 字數 1649 閱讀 2118

先來回顧一下概念:

指標陣列 —— 存放指標的陣列

函式指標 —— 存放函式位址的指標

函式指標陣列 —— 存放函式指標的陣列

接下來說說這次要製作的計算器的功能:

1.add —— 加法

2.sub —— 減法

3.mul —— 乘法

4.div —— 除法

0.exit —— 退出

具體來通過**講解:

(1)首先寫乙個選單程式,在執行程式時首先列印一次選單。

void menu()

(2)寫好四個關於加、減、乘、除操作的函式。

int add(int x, int y)

int sub(int x, int y)

int mul(int x, int y)

int div(int x, int y)

(3)寫主函式,定義input是你要輸入的數,用來選擇功能;定義x和y是你要輸入兩個的運算元;接著在主程式中呼叫選單函式menu()。

int main()

(4)使用do while迴圈,以及if else語句,建立規則,如果輸入的input是0的話就退出迴圈,while(input)代表input非零的時候會繼續迴圈;如果input在1~4之間則對應計算器選單上的功能,這時你需要輸入兩個數字;如果超出這個範圍則重新迴圈。

int main()

else if (input >= 1 && input <= 4)

else

} while (input);

return 0;

}(5)接下來在主函式中定義乙個函式指標陣列,int (*pfarr[5])(int,int) = ; 代表名為pfarr的函式指標陣列有存放了5個指向函式的指標,分別是0,add,sub,mul,div;之所以增加0為陣列的首元素,是為了陣列元素下標與選單相對應。

int main()

; do

else if (input >= 1 && input <= 程式設計客棧4)

else

} while (input);

return 0;

}(6)最後我們定義ret用來接收函式的返回值也就是運算結果,並列印;呼叫的時候直接呼叫函式指標陣列中的input位,就是在呼叫相應的函式位址,並使用該函式;呼叫完成後列印ret。

int main()

; do

else if (input >= 1 && input <= 4)

else

} while (input);

return 0;

}到這裡就全部講解完成,喜歡的話點個贊再走吧~

全部**在這裡:

#include

void menu()

int add(int x, int y)

int sub(int x, int y)

int mul(int x, int y)

int div(int x, int y)

int main()

; do

else if (input >= 1 && input <= 4)

else

} while (input);

return 0;

}本文標題: c語言運用函式指標陣列實現計算器功能

本文位址:

C語言 函式,函式指標 指標陣列,陣列指標。

include char fun1 char p,char a char fun2 char p,char a char fun3 char p,char a int main char pfun char p,char a 第6行使函式指標指向我們自定義的fun1函式。第7行是通過函式指標去呼叫我...

C語言 函式指標 函式指標陣列 函式指標陣列的指標

1.定義理解 函式的位址可以通過取位址函式名拿到,也可以通過函式名直接拿到。2.函式指標 1 定義乙個函式test void test char str intmain 2 函式指標的使用 呼叫函式test,傳參 zhangsan p zhangshan 這裡的 沒有起作用,它是讓我們知道這是乙個指...

C語言 用函式指標陣列實現轉移表(計算器)

函式指標陣列也是陣列,陣列的每乙個成員是函式指標 這個指標指向函式 可以通過它實現乙個轉移表 計算器 如下 函式部分 include include pragma warning disable 4996 intadd int x,int y intsub int x,int y intmul in...