口算練習題 模擬演算法

2021-10-10 19:01:21 字數 1208 閱讀 3315

題目描述

王老師正在教簡單算術運算。細心的王老師收集了i道學生經常做錯的口算題,並且想整理編寫成乙份練習。 編排這些題目是一件繁瑣的事情,為此他想用電腦程式來提高工作效率。王老師希望儘量減少輸入的工作量,比如5+8的算式最好只要輸入5和8,輸出的結果要盡量詳細以方便後期排版的使用,比如對於上述輸入進行處理後輸出 5+8=13 以及該算式的總長度6。王老師把這個光榮的任務交給你,請你幫他程式設計實現以上功能。

輸入格式

第一行為數值i

接著的i行為需要輸入的算式,每行可能有三個資料或兩個資料。

若該行為三個資料則第乙個資料表示運算型別,a表示加法運算,b表示減法運算,c表示乘法運算,接著的兩個資料表示參加運算的運算數。

若該行為兩個資料,則表示本題的運算型別與上一題的運算型別相同,而這兩個資料為運算數。

輸出格式

輸出2*i行。對於每個輸入的算式,輸出完整的表示式及結果,第二行輸出該表示式的總長度

輸入 

4a 64

46275

125c 11

99b 46

64輸出64+

46=1109

275+

125=

4001111*

99=1089

1046-64

=-189

這是一道模擬題,運用sscanf和sprintf就可以輕鬆ac。

#include

using

namespace std;

intmain()

else

memset

(s,0

,sizeof

(s));if

(tmp==

'a')

sprintf

(str,

"%d+%d=%d"

,a,b,a+b)

;else

if(tmp==

'b')

sprintf

(str,

"%d-%d=%d"

,a,b,a-b)

;else

sprintf

(str,

"%d*%d=%d"

,a,b,a*b)

; cout

(str)

<}return0;

}

練習題 時鐘模擬

6 12 時鐘模擬 30分 乙個time類,資料成員有時 分 秒。要求模擬秒錶,每次走一秒,滿60秒進製,秒又從零開始計數。滿60分進製,分又從零開始計數。輸出時 分和秒的值。使用過載 運算子實現 class mytime 請在這裡填寫答案 int main mytime operator frie...

演算法練習題

題目描述 給定乙個排序陣列,你需要在 原地 刪除重複出現的元素,使得每個元素只出現一次,返回移除後陣列的新長度。不要使用額外的陣列空間,你必須在 原地 修改輸入陣列 並在使用 o 1 額外空間的條件下完成。示例 1 給定陣列 nums 1,1,2 函式應該返回新的長度 2,並且原陣列 nums 的前...

1007 數字邏輯練習題(模擬)

時間限制 1 sec 記憶體限制 128 mb 提交 264 解決 59 提交 狀態 討論版 原碼 反碼 補碼都是一樣的,都是正數本身。對於負數 原碼是符號位為 1,數值部分取絕對值的二進位制。反碼是符號位為 1,其它位是原碼取反。補碼是符號位為 1,其它位是原碼取反,未位加 1。輸入乙個 64bi...