您好,登錄后才能下訂單哦!
這篇文章主要介紹了C語言實現計算器的代碼怎么寫的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇C語言實現計算器的代碼怎么寫文章都會有所收獲,下面我們一起來看看吧。
C語言計算器兩種方法
//一般做法 #include<stdio.h> #include<windows.h> //#include<assert.h> void menu() { printf("**************************\n"); printf("****歡迎來到計算器頁面****\n"); printf("**** 1.add 2.mul *****\n"); printf("*****3.sub 4.div1 *****\n"); printf("*****0.exit *****\n"); printf("**************************\n"); } int add(int x, int y) { return x + y; } int mul(int x, int y) { return x * y; } int sub(int x, int y) { return x - y; } int div1(int x, int y) { return x / y; } int main() { int n = 1; menu(); while (n) { printf("請輸入選項:\n"); scanf("%d", &n); int x = 0, y = 0; /*printf("請輸入兩個整數!\n"); scanf("%d%d", &x, &y);*/ //若將兩個數字輸入放在此處會出現輸入錯誤時不能退出系統,而是顯示“輸入兩個整數”的提示 switch (n) { case 1: printf("請輸入兩個整數!\n"); scanf("%d%d", &x, &y); printf("%d\n", add(x, y)); break; case 2: printf("請輸入兩個整數!\n"); scanf("%d%d", &x, &y); printf("%d\n", mul(x, y)); break; case 3: printf("請輸入兩個整數!\n"); scanf("%d%d", &x, &y); printf("%d\n", sub(x, y)); break; case 4: printf("請輸入兩個整數!\n"); scanf("%d%d", &x, &y); printf("%d\n", div1(x, y)); break; case 0: printf("退出計算器!\n"); break; default: printf("輸入錯誤,請重新輸入!\n"); } } }
//使用函數指針數組解決計算器問題 #include<stdio.h> #include<windows.h> //#include<assert.h> void menu() { printf("**************************\n"); printf("****歡迎來到計算器頁面****\n"); printf("**** 1.add 2.mul *****\n"); printf("*****3.sub 4.div1 *****\n"); printf("*****0.exit *****\n"); printf("**************************\n"); } int add(int x, int y) { return x + y; } int mul(int x, int y) { return x * y; } int sub(int x, int y) { return x - y; } int div1(int x, int y) { return x / y; } int main() { int n = 1; menu(); while (n) { printf("請輸入選項:\n"); scanf("%d", &n); int(*arr[5])() = { 0,add,mul,sub,div1 };//轉移表 //定義一個函數指針數組,存放函數地址 if (n >= 0 && n < 5) { int x = 0, y = 0; printf("請輸入兩個整數:>\n"); scanf("%d%d", &x, &y); printf("%d\n", (*arr[n])(x,y));//輸出結果 } else { printf("輸入有誤,請重新輸入!\n"); scanf("%d", &n); } } system("pause"); return 0; }
兩種方法相比,第一種相似代碼較多,比較冗余;第二種代碼簡潔直觀,程序效率高。
關于“C語言實現計算器的代碼怎么寫”這篇文章的內容就介紹到這里,感謝各位的閱讀!相信大家對“C語言實現計算器的代碼怎么寫”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。