C語言I博客作業10


這個作業屬於那個課程
這個作業要求在哪里
我在這個課程的目標是
這個作業在那個具體方面幫助我實現目標
參考文獻

一、PTA作業(20分/題)

1.1本題要求編寫程序,輸出n行由大寫字母A開始構成的三角形字符陣列。

輸入格式;

輸入在一行中給出一個正整數n(1≤n<7)。

輸出格式:

輸出n行由大寫字母A開始構成的三角形字符陣列。格式見輸出樣例,其中每個字母后面都有一個空格。

輸入樣例:

4

輸出樣例:

A B C D 
E F G 
H I 
J                                 

1.1.1數據處理

數據表達:定義了整形i,j,n以及字符型變量c,c是輸出的字母n是字母的行數。

數據處理:定義整形i,j,n,字符型變量c,c是輸出的字母n是字母的行數。
把A賦值給c;
輸入n;
for i遞加
{
    for j 遞加
    {
        輸出c;
        c++;
    換行;

1.1.2實驗代碼截圖

1.1.3 造測試數據

輸入數據
5
4
3

1.1.4 PTA提交列表及說明

格式錯誤:兩次都是輸出的%c后邊沒加空格,第一次沒發現。

1.2梅森數

形如2^n-1的素數稱為梅森數(Mersenne Number)。例如2​2​​−1=3、23−1=7都是梅森數。1722年,雙目失明的瑞士數學大師歐拉證明了2^31−1=2147483647是一個素數,堪稱當時世界上“已知最大素數”的一個記錄。

本題要求編寫程序,對任一正整數n(n<20),輸出所有不超過2^n−1的梅森數。

輸入格式:

輸入在一行中給出正整數n(n<20)。

輸出格式:

按從小到大的順序輸出所有不超過2^n​​−1的梅森數,每行一個。如果完全沒有,則輸出“None”。

輸入樣例:

6

輸出樣例:

3
7
31

1.2.1 數據處理

數據表達:定義了整形變量n,m,i,j,x=0,n是用戶輸入的數,i用來保存輸出梅森數,j和m用來控制循環
數據處理:定義整形變量n,m,i,j,x=0,n是用戶輸入的數,i用來保存輸出梅森數,j和m用來控制循環
輸入n
if  n<2
{
   輸出 None
}
for  m的遞增
{ 
     將m的平方賦值給i
     for   i的遞增
     {
           if i除以j取余等於0
           x++
     }
     if  x等於0
    
         換行輸出 i
     x=0刷新x的值


1.2.2 實驗代碼截圖

1.2.3 造測試數據

輸入數據
8
6
4

1.2.4 PTA提交列表及說明

編譯錯誤:兩次都是定義主函數的后邊沒打括號,還有輸入的時候中間打了個句號,最后是在Dev-c++上發現的問題。

1.3同構數

一個數恰好出現在它的平方數的右端,這個數就稱為同構數。找出1~1000之間的全部同構數。

輸入格式;

在一行中輸出所有滿足條件的同構數,每個數輸出占6列。沒有其它任何附加格式和字符。

輸出格式:

   1     5     6    25    76   376   625

1.3.1 數據處理

數據表達:定義了整形i,j,n;i用於for循環,n為輸入的數,j是n的平方。
數據處理:定義整形i,j,n;i用於for循環,n為輸入的數,j是n的平方。
開始
定義整形
for i的遞增
{
    將i賦值給n;
    n的平方等於j;
    if  n==j%10||n==j%100||n==j%1000  /*判斷是否n為同構數/*
    輸出
}
結束

1.3.2 實驗代碼截圖

1.3.3 造測試數據

輸入數據

1.3.4 PTA提交列表及說明

答案錯誤 1:n==j%1000少打了個0。
答案錯誤 2: 少了個n=i,也就是說我后邊n的值一直沒有變。后邊大腦仔細運行了一遍發現了。

2.代碼互評(5分)

同學代碼(吳佳柳)

我的代碼

相同點:
都是用計算位數的方法然后求余來判斷是否為同構數。
不同點:
1.他是自定義函數求平方,用for來計算求余除的數。
2.我是用了一個for循環一個一個的找出1000內的同構數。
注:我的代碼簡單的和直接輸出沒多大區別,看着與神仙的差距,我無地自容了。

同學代碼(楊宇)

我的代碼

相同點:都是分成了兩部分,通過判斷i%j是否為0來判斷是否為素數。
不同點:開始我是n<2,他是n=1來排除None的情況,然后它使用了個break語句來跳出循環。
總體來講我的要計算的更多,效率低上不少。

三、學習總結(15分)

3.1 學習進度條(5分)

周/日期
第四周
第五周
第六周
第七周
第八周
第九周
第十周
第十一周
第十二周
第十三周
第十四周

3.2 累積代碼行和博客字數(5分)

時間
第四周
第五周
第六周
第七周
第八周
第九周
第十周
第十一周
第十二周
第十三周
第十四周

3.3 學習內容總結和感悟(5分)

3.3.1 學習內容總結

3.3.2 學習體會

本周沒上新課雖然,但還是比以前更實用,隨着時間的推移,發現我和大佬們的差距已經拉的非常大了,自學真的太重要了,跟着老師的步子走,只會落后的越來越多,而且知識學完后一定要找時間做題復習,學會跟掌握的區別就在這里。
注:哪些星期三8點前交的,要不要給我們這些萌新留個活路啊啊啊啊啊啊。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM