日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

C语言多功能计算器

發布時間:2025/3/12 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C语言多功能计算器 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

最近經過一段時間的C語言學習,我使用C語言制作了一個多功能計算器,想要給大家分享一下。

計算器設計流程

1 . 實現基本的加減乘除運算。
2 . 能夠實現開方,立方,平方等復雜運算。
3 . 整體的界面展示,顯示更加清晰易懂。
4 . 將運算和編號相結合,選擇要使用的運算符輸入對應的編號。
5 . 設置了退出編號,當你輸入對應編號的時候退出程序。
6 . 循環計算,當你計算出第一個數值的時候程序自動循環讓你重新輸入要計算的第二個運算符即運算的數字。

效果演示

完整代碼

# include <stdio.h> # include <ctype.h> # include <math.h>char get_choice(void); //獲取用戶輸入的選項,并建立目 char get_first(void); //獲取用戶輸入的選項,并剔除錯誤輸入 float get_int(void); //獲取用戶輸入的計算值 float add(void); //定義加法函數 float subtraction(void); //定義減法函數 float multiplication(void); //定義乘法函數 float division(void); //定義除法函數 float extract(void); //定義開方函數 float square(void); //定義平方函數 float cube(void); //定義立方函數int count = 0; int main(void) { char choice;printf("***多功能計算器***\n"); choice = get_choice(); while(choice != 'q') { switch(choice) { case 'a': add(); break; case 'b': subtraction(); break; case 'c': multiplication(); break; case 'd': division(); break; case 'e': extract(); break; case 'f': square(); break; case 'g': cube(); break; default : printf("您輸入有誤,請重新輸入:"); break; } fflush(stdin); choice = get_choice(); }printf("bye");return 0; }//獲取用戶輸入的選項,并建立目錄 char get_choice(void) { char ch; int a = 0;//建立目錄printf("\n--------------------------------\n"); printf("a. 加法\t\t\tb. 減法\nc. 乘法\t\t\td. 除法\n"); printf("e. 開方\t\t\tf. 平方\ng. 立方\t\t\tq. 退出\n"); printf("--------------------------------\n"); printf("請輸入你的選項:");ch = get_first(); while(ch == ' ' || ch == '\n' || ch == '\t') ch = get_first();//判斷用戶輸入的選項是否有誤 while((ch<'a' || ch>'g') && ch !='q') { putchar(ch); printf(" 你輸入的選項有誤,請重新輸入:"); ch = get_first();}return ch; }//獲取用戶輸入的選項,并剔除錯誤輸入 char get_first(void) { char ch;ch = getchar();//剔除由用戶輸入選項時產生的換行符 while(ch == '\n') { ch = getchar(); }return ch; }//獲取用戶輸入的計算值 float get_int(void) { float input; char ch; int a;if(count == 0) printf("親!請輸入數值:"); if(count == 1) printf("親!請輸入第一個數值:"); if(count == 2) printf("親!請輸入第二個數值:");a = scanf("%f", &input);//判斷用戶的輸入是否為一個數值 while(a != 1) { //剔除用戶輸入錯誤的字符 while((ch = getchar()) != '\n') { putchar(ch); printf(" 不是一個數值,請輸入例如3、111.2、或者-1"); a = scanf("%f", &input); } }return input; }//定義加法函數 float add(void) { float i, j, sum;count = 0; count = count+1; i = get_int(); count = count+1; j = get_int(); sum = i + j;printf("%.2f + %.2f = %.2f\n", i, j, sum);return sum; }//定義減法函數 float subtraction(void) { float i, j, sum;count = 0; count = count+1; i = get_int(); count = count+1; j = get_int(); sum = i - j;printf("%.2f - %.2f = %.2f\n", i, j, sum);return sum; }//定義乘法函數 float multiplication(void) { float i, j, sum;count = 0; count = count+1; i = get_int(); count = count+1; j = get_int(); sum = i * j;printf("%.2f * %.2f = %.2f\n", i, j, sum);return sum; }//定義除法函數 float division(void) { float i, j, sum;count = 0; count = count+1; i = get_int(); count = count+1; j = get_int();//判斷除數是否為0 while(j == 0) { printf("除數不能為0\n請重新輸入!!!\n"); j = get_int(); } sum = i / j;printf("%.2f / %.2f = %.2f\n", i, j, sum);return sum; }//定義開方函數 float extract(void) { float i, sum;count = 0; i = get_int(); //判斷開方數是否小于0,如果小于0,則讓用戶重新輸入 while(i < 0) { printf("請輸入大于0的數值\n"); i = get_int(); } sum = sqrt(i);printf("%.2f的開方等于%.2f\n", i, sum);return sum; }//定義平方函數 float square(void) { float i, sum;count = 0; i = get_int(); sum = i * i;printf("%.2f的平方等于%.2f\n", i, sum);return sum; }//定義立方函數 float cube(void) { float i, sum;count = 0; i = get_int(); sum = i * i * i;printf("%f的立方等于%.3f\n", i, sum);return sum; }

總結

以上是生活随笔為你收集整理的C语言多功能计算器的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。