物件導向程式設計寒假作業1程式設計題

2022-08-04 22:27:21 字數 2230 閱讀 2401

這個作業屬於哪個課程

2023年物件導向程式設計 (福州大學 - 數學與電腦科學學院)

這個作業要求在**

物件導向程式設計寒假作業1

這個作業的目標

1.安裝c++開發環境(見附錄)

2.完成問答題、實踐題及程式設計題

3.發布部落格

作業正文

物件導向程式設計寒假作業1問答題

物件導向程式設計寒假作業1實踐題

物件導向程式設計寒假作業1程式設計題

其他參考文獻

均已在問答題、實踐題中標出

通過漢字「整數」、「錢包」、「看看」、「增加」、「減少」實現白話文程式設計。注意錢包總額範圍為零至九十九。

通過讀題可知,本題包含三個方面:

(1)定義整數變數「錢包」,並對其進行初始化;

(2)輸入「增加」、「減少」的指令,對錢包總額進行變化;

(3)通過「看看 錢包」,輸出錢包總額。

首先,我打算把其分為四塊進行,由main函式、負責錢包總額初始化的函式、負責錢包總額增減的函式以及輸出錢包總額的函式構成。

以下為錢包總額初始話的函式**:

int beginning(int wallet,char d)
這裡我採取列舉的方法,但是**會顯得很冗長,有沒有其他更簡便的方法呢?

對於負責錢包總額增減的函式的部分,我採用在main函式中判斷,若字串c為「增加」,則進行

wallet+=calculate(wallet,d);
同理,若字串c為「減少」,則進行

wallet-=calculate(wallet,d);
本來一開始是打算將增加與減少分別寫乙個函式的,但是後來發現用if語句進行判斷,更加簡潔,下面為我的函式主體**:

int calculate(int wallet,char d)
對於輸出錢包總額的函式這個部分,一開始我打算在函式中分三種情況討論,然後再在每一種情況中列舉出1-10種情況,而後發現這樣做過於冗長,故此再寫了乙個函式負責1-10漢字輸出,而在輸出錢包總額函式中的三種情況呼叫此函式。如下:

void num(int i)

void sum(int wallet)

else if(wallet<20)

else

}

對於main函式部分,**見下:

int main() 

scanf("%s",d);

if(strcmp(c,"增加")==0) wallet+=calculate(wallet,d);

if(strcmp(c,"減少")==0) wallet-=calculate(wallet,d);}}

return 0;

}

總**如下:

#include #include int beginning(int wallet,char d)

int calculate(int wallet,char d)

void num(int i)

void sum(int wallet)

else if(wallet<20)

else

}int main()

scanf("%s",d);

if(strcmp(c,"增加")==0) wallet+=calculate(wallet,d);

if(strcmp(c,"減少")==0) wallet-=calculate(wallet,d);}}

* 在解決這一題,我使用列舉的方法將0-10全部寫出來,是否有更簡便的方法可以替換這種列舉的方法;

* 在這一過程中,我嘗試了用scanf函式與gets函式,並比較了兩者的不同,可以在今後的學習中分情況不同從而進行使用

* 本次使用了strcmp函式,並且注意到了,當兩個字串相同時,其返回值為0,而並非1,這以後一定會注意!!

物件導向程式設計寒假作業1 程式設計題

這個作業屬於哪個課程 2020物件導向程式設計張棟班 這個作業要求在 物件導向程式設計寒假作業1 這個作業的目標 按照要求完成簡單文言文程式設計的相關功能 其他參考文獻 無ps 因為能力有限加上本人有點懶,所以該程式僅支援資料範圍在0 99內的處理和很差的錯誤提示以及 不夠簡練,如有大佬發現我的 有...

物件導向程式設計寒假作業1

這個作業屬於哪個課程 2020物件導向程式設計張棟班 這個作業要求在 物件導向程式設計寒假作業1 這個作業的目標 安裝c 開發環境 評價c語言的不足之處 了解c c 的編譯過程 檢視c 編譯器版本 使用命令列編譯乙份c語言 c 按照要求完成簡單文言文程式設計的相關功能 作業正文 物件導向程式設計寒假...

物件導向程式設計寒假作業1

這個作業屬於哪個課程 班級的鏈 這個作業要求在 作業要求的鏈 這個作業的目標 寫上具體方 作業正文 其他參考文獻 一 問答題。1 你認為c語言有什麼缺陷。c語言易讀性相對較低 c語言語法限制不太嚴格,對陣列的越界不做檢查,對scanf有無 不進行檢查 c語言是面向過程不是物件導向 c語言字串處理能力...