C語言實現(xiàn)簡單的計算器
更新時間:2021年02月23日 17:12:23 作者:yuelinghou
這篇文章主要為大家詳細介紹了C語言實現(xiàn)簡單的計算器,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
本文實例為大家分享了C語言實現(xiàn)簡單計算器的具體代碼,供大家參考,具體內容如下
描述:簡單的實現(xiàn)四則運算
1.switch法
#include<stdio.h> void menu()//菜單函數(shù) { printf("************************************\n"); printf("***** 1.add 2.sub *****\n"); printf("***** 3.mul 4.div *****\n"); printf("*********** 0.exit ***********\n"); printf("************************************\n"); } double Add(double x, double y)//加法函數(shù) { return x + y; } double Sub(double x, double y)//減法函數(shù) { return x - y; } double Mul(double x, double y)//乘法函數(shù) { return x * y; } double Div(double x, double y)//除法函數(shù) { return x / y; } int main() { int input = 0;//運算符 double x = 0.0;//第一個運算數(shù) double y = 0.0;//第二個運算數(shù) do { menu(); printf("請選擇:>"); scanf("%d", &input); if (input >= 1 && input <= 4) { printf("請輸入兩個操作數(shù)(用空格分隔):>"); scanf("%lf%lf", &x, &y); } switch (input) { case 1: printf("%lf\n", Add(x, y)); break; case 2: printf("%lf\n", Sub(x, y)); break; case 3: printf("%lf\n", Mul(x, y)); break; case 4: printf("%lf\n", Div(x, y)); break; case 0: printf("退出\n"); break; default: printf("輸入錯誤,請重新輸入\n"); break; } } while (input); return 0; }
2.函數(shù)指針數(shù)組法
#include<stdio.h> void menu()//菜單函數(shù) { printf("************************************\n"); printf("***** 1.add 2.sub *****\n"); printf("***** 3.mul 4.div *****\n"); printf("*********** 0.exit ***********\n"); printf("************************************\n"); } double Add(double x, double y)//加法函數(shù) { return x + y; } double Sub(double x, double y)//減法函數(shù) { return x - y; } double Mul(double x, double y)//乘法函數(shù) { return x * y; } double Div(double x, double y)//除法函數(shù) { return x / y; } int main() { int input = 0;//運算符類型 double x = 0.0;//第一個操作數(shù) double y = 0.0;//第二個操作數(shù) double(*p[5])(double, double) = {NULL,Add,Sub,Mul,Div};//把相應的函數(shù)指針放入一個數(shù)組里 do { menu(); printf("請選擇:>"); scanf("%d", &input); if (input >= 1 && input <= 4) { printf("請輸入兩個操作數(shù)(用空格分隔):>"); scanf("%lf%lf", &x, &y); printf("%lf\n", p[input](x, y)); } else if (0 == input) printf("退出\n"); else printf("輸入錯誤,請重新輸入\n"); } while (input); return 0; }
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
C++使用遞歸和非遞歸算法實現(xiàn)的二叉樹葉子節(jié)點個數(shù)計算方法
這篇文章主要介紹了C++使用遞歸和非遞歸算法實現(xiàn)的二叉樹葉子節(jié)點個數(shù)計算方法,涉及C++二叉樹的定義、遍歷、統(tǒng)計相關操作技巧,需要的朋友可以參考下2017-05-05