2017《物件導向程式設計》寒假作業二

2022-08-10 08:18:13 字數 1688 閱讀 9223

解題的思路過程

看到這道題目,首先想到的是分為兩種情況討論:第一種是和值小於999且大於-999的情況,這類情況不需要輸出「,」,所以直接輸出結果即可;第二種情況是和值大於999或者是小於-999的情況,該題應該主要討論的是第二種情況。在第二種情況下,因為輸出的值中可能含有「,」或者是「-」這類字元,所以我認為這道題的結果應該是用字串的形式來輸出,而出於簡潔的考慮,當和值為負數時我選擇先將負號消除,在最後選擇將負號加上。最重要的部分來了:給輸出的結果加上逗號,本來是想用for語句來進行迴圈的,但是心想輸出結果的字元長度不一定,所以改用while語句來迴圈比較方便。如果是負數的話,只要在最後輸出時加上乙個負號即可。大致思路就是這個樣子。

編碼過程中除錯與上線測試(提交**)後的bug發現與修改過程

一開始根據自己的思路寫出來的**是這樣的

#include int main()

int n=1,i=0;

while(s>0)

if(flag==1)

for(i>=0;i--;)

printf("\n");

} if(s<=999&&s>=-999)

return 0;

}

似乎是部分錯的樣子,可能是第二次迴圈的語句的問題,所以乾脆將第二次的迴圈語句也改成了while語句

#include int main()

int n=1,i=0;

while(s>0)

if(flag==1)

while(i>=0)

printf("\n");

} if(s<=999&&s>=-999)

return 0;

}

結果一模一樣的部分錯誤,所以我開始在編譯器裡一次一次除錯**發現錯誤,將判斷是否需要加上「,」的那段**稍微修正了一下,並且發現最後改成else就可以解決部分錯誤,但是不知道為什麼輸出結果前面會有乙個小空格?

#include int main()

while(s>0)

if(flag==1)

while(i>=0)

printf("\n");

} else

return 0;

}

最後在同學的幫助下完成了最後的**

#include int main()

while(s>0)

if(flag==1)

result[i++]='-';

result[i--]='\0';

while(i>=0)

printf("\n");

} else

return 0;

}

在pat上的提交記錄列表截圖

2017級物件導向程式設計寒假作業2

deadline 2018.02.11 22 00 pm 第一次的寒假作業,開啟了大家的寒假生活,轉眼回到了 小學生作文題 的感覺。不知道是否也通過這次作業,將你的回憶時光拉回到了幾年前或十年前,沉思回憶代替了紛擾的知識。很多同學回憶了小學 中學的課任老師,或書法 繪畫的老師。無論他們是嚴厲還是寬容...

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

總有一些人在你成長的路上,或多或少幫助你,讓你感動,讓你難忘。時過多年忘了那時的一點一滴,忘了其他,但是我還是記得她。那還是小學,她經常把我們幾個語文比較差的同學留下來額外輔導,耐心的給我們聽寫,幫我們改出 錯了。臨近考試她還把我們交到了她的家裡,給我們輔導了好幾節課,自始至終,他沒有收過我們一分錢...

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

這個作業屬於哪個課程 2020物件導向程式設計張棟班 這個作業的要求在 物件導向程式設計寒假作業2 這個作業的目標 1 學習git的建立倉庫和上傳 2 優化 並且可以優雅地命名 3 學習window批處理 作業正文 2020物件導向程式設計寒假作業2 其他參考文獻 freopen函式 c 語言程式設...