用C語言完成簡單的計算器功能 2

2021-07-11 01:11:05 字數 1703 閱讀 6301

之前用switch語句完成了乙個簡單計算器的功能,下面我給大家用if語句和while迴圈語句再實現乙個簡單計算器的程式設計。

要求:

實現簡單的計算器,具體**如下:

#include // 標頭檔案

void main()

else

if('-'==a) // 減法操作

else

if('*'==a) // 乘法操作

else

if('/'==a) // 取整操作

else

if('%'==a) // 取餘操作

else

if('q'==a) // 退出系統

else}}

這樣就完成了乙個簡單計算器程式,形式和我寫的《用c語言完成簡單的計算器功能(1)》一樣,只是通過符號來選擇對應的操作,原理一致。下面我們看一下改程式執行的結果,如下:

通過結果我們發現在進行選擇操作後,求兩個數和,然後會發現結果出來了,但會多打出上圖紅色方框中的內容,大家不妨試一下它的效果,一眼就能知道顯示有問題。對於這個問題,我進行除錯和單步跟蹤,發現在下一輪迴圈時,在語句

scanf("%c",&a);
會自動進行輸入了乙個換行操作,我思來想去,感覺是因為在輸入字元時通過語句scanf(「%c」,&a);輸入了乙個字元,但是我們會打回車,這是這個回車就被保留在快取中,當下次需要輸入字元時會自動進行輸入(個人理解),這樣就導致了會自動出現紅色方框中的一塊資訊,那麼我們需要修改一下**,已完成它的正確顯示,修改的**如下:

#include // 標頭檔案

void main()

if('+'==a) // 加法操作

else

if('-'==a) // 減法操作

else

if('*'==a) // 乘法操作

else

if('/'==a) // 取整操作

else

if('%'==a) // 取餘操作

else

if('q'==a) // 退出系統

else}}

從**上我們可以看到,我們只需要在原來的**中加一條條件判斷就可以解決上面的問題,加的**如下:

if('\n' == a)

// 加入自動換行符,我們需要進行重新輸入

這樣就解決上述所說的問題,下面看一下它的顯示結果:

C 實現簡單計算器功能

實現效果 form1.cs using system using system.collections.generic using system.componentmodel using system.data using system.drawing using system.linq using...

C 實現簡單計算器功能

c 實現簡單計算器的具體 供大家參考,具體內容如下 要求 輸入乙個包含 的非負整數計算表示式,計算表示式的值,每個字元之間需有乙個空格,若一行輸入為0,則退出程式。輸入樣例 4 2 5 7 11 輸出樣例 13.36 實現 include include using namespace std ch...

C語言實現簡單計算器功能 1

這幾天一直上www.cppcns.com控制語句,在學完if switch和迴圈語句後,為了鞏固所學知識點,想給學生出一道簡單的計算器程式。題目如下 通過所學的知識 選擇語句 迴圈語句 完成乙個簡單的計算器程式設計,要求不許抄襲,只能用自己所學的知識點,不可引用網上自己的不懂的程式。要求的格式如下圖...