C語言I博客做業10

問題 回答
這個做業屬於那個課程 C語言程序設計II
這個做業要求在哪裏 做業要求
我在這個課程的目標是 本身設計一個小遊戲
這個做業在那個具體方面幫助我實現目標 選擇合適的算法、合理的循環結構,熟練的編寫程序
參考文獻 百度百科

1.PTA實驗做業(20分/題)

1.1梅森數

1.1.1數據處理

數據表達:定義了整型函數i循環次數,n表明2的冪數,a2的b次方,b作冪數遞增,c是計數器。
數據處理:c++

定義了整型函數i循環次數,n表明2的冪數
    定義a是2的b次方,b作冪數遞增,c是計數器
    輸入2的冪數
    while(b<n)
        b++         /*做爲2的冪從1開始循環一次加1*/
        a=pow(2,b)  /*將數化成2的次方形式,減小循環次數*/
        for(i=2;i<=(a-1)/2;i++)
            if((a-1)%i==0)  /*若是不是素數*/
                跳出當前循環
            end if
        end for
        if(i>(a-1)/2)  /*若是是梅森數*/
            輸出梅森數並換行
            c++
        end if
        end while
    if(c==0)
        輸出None
    end

1.1.2實驗代碼截圖

1.1.3 造測試數據

輸入數據 輸出數據 說明
6 3
7
31
題中數據
1 None 較小數據
15 3
7
31
127
8191
較大數據

1.1.4 PTA提交列表及說明

提交列表說明:
編譯錯誤:在Dev-c++上編譯了幾回,思路想出來了,但用代碼時邏輯顯得有點亂,錯了幾回,通過調試後,作對了。算法

1.2輸出三角形字符陣列

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

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

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

輸入樣例:markdown

4函數

輸出樣例:學習

A B C D
E F G
H I
J測試

1.2.1 數據處理

數據表達:定義了整型變量,n正整數,i表明行,j表明列;定義了字符型變量c,c用來賦值字符。
數據處理:字體

定義了整形變量:n正整數,i行,j列
    定義字符型變量c
    輸入正整數n
    c ← 'A'      /*字符a賦給字符串c*/
    for(i←1;i<←n;i++)   /*外循環進行行循環*/
        for(j←i;j<←n;j++)/*內循環進行列循環*/
            輸出字符c
            c++
        end for
        換行
    end for
    end

1.2.2 實驗代碼截圖

1.2.3 造測試數據

輸入數據 輸出數據 說明
5 A B C D E
F G H I
J K L
M N
O
3 A B C
D E
F
6 A B C D E F
G H I J K
L M N O
P Q R
S T
U

1.2.4 PTA提交列表及說明

提交列表說明:
編譯錯誤:在通過第一題的洗禮後,如何輸出字符陣列,已經有點數了,在百度上找到c='A'是能夠從A字符輸出後,題目就很簡單了。大數據

1.3同構數

一個數剛好出如今它的平方數的右端,這個數就稱爲同構數。找出1~1000之間的所有同構數。

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

輸出樣例:

1     5     6    25    76   376   625

1.3.1 數據處理

數據表達:定義了整型變量i用於循環記數,j表明這個數的平方,n在循環中儲存i。
數據處理:

定義整型變量i用於循環記數,j表明這個數的平方,n在循環中儲存i
    for(i←1;i<←1000;i++)/*循環從1到1000*/
        n←i             /*將i賦值給n8/
        j←n*n
        if(n←←j%10||n←←j%100||n←←j%1000) /*三種1~1000計算方法及結果,判斷是否相等*/
        輸出佔列的同構數
        end for
end

1.3.2 實驗代碼截圖

1.3.3 造測試數據

輸入數據 輸出數據 說明
1 5 6 25 76 376 625

1.3.4 PTA提交列表及說明

提交列表說明:
答案錯誤:這題開始我是懵的,後來知道一個數的平方右邊有這個數就是同構數,我開始在Dev-c++上用了好多for語句和if語句,來在1~1000中尋找,結果,太亂了,邏輯錯誤,後經室友提醒可能直接用邏輯或把條件並起來,就少了那些算法,但我感受有點取巧了。

2.代碼互評(5分)

同窗代碼截圖

本身代碼截圖

1.咱們變量數不一樣,他的比我多一點,還有他運用的是for語句中加if語句,而我運用的是嵌套循環。
2.我定義了字符型變量,而他直接用的'A'。
3.他的算法是循環遞減,.而個人是循環遞增。

同窗代碼截圖

本身代碼截圖

我和他的最大不一樣是算法不一樣,語句使用也略有不一樣。他是利用求根來判斷是否爲梅森數。

3.學習總結(15分)

3.1 學習進度條(5分)

周/日期 這周所花的時間 代碼行 學到的知識點簡介 目前比較迷惑的問題
9.16~9.22 6h 20 初步瞭解編程如何進行 編程開始的單詞有什麼做用,編譯是如何進行的
9.23~10.6 30h 30 學會運用markdown語法和了解博客園做業格式 如何在博客隨筆字體加顏色
10.7~10.11 48h 235 學會了if語句和編程的數學函數怎麼寫 while語句如何使用和電腦上表格和why手機上順序不同
10.14~10.20 36h 100 掌握使用for循環語句 對多種循環結構不夠了瞭解以及分支結構和循環結構同時使用的編程前後。
10.20~10.27 32h 135 如何對函數的定義和調用,思惟導圖 函數的調用和定義有沒有侷限性。
10.28~11.3 36h 512 熟悉多分支結構、字符型數據類型和邏輯運算符 四則運算和字符型變量
11.4~11.10 12h 232 熟悉多分支結構switch語句的使用 在博客園中如何添加小掛飾
11.11~11.17 18h 263 熟悉使用while和do-while結構 字符的實際使用
11.18~11.24 20h 186 熟悉break、continue的使用,熟悉使用循環的嵌套解決問題 嵌套循環的邏輯
11.25~11.1 22h 270 選擇合適的算法、合理的循環結構,熟練的編寫程序 數組的運用

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

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

3.3.1 學習內容總結


3.3.2 學習體會

本週PTA仍是有難度的,第一題纔是挑戰題吧,我死磕第一題無奈敗北,耽誤許多時間,這周我壓力劇增,這周PTA綜合較強,但有好多同窗認爲太簡單,很快作完了,秀了我一臉,而我仍是須要藉助百度百科,這讓我壓力山大,不能再打遊戲了,刷題纔是王道,我得好好刷題,否則都被大佬們甩開十萬八千里了。每一個知識點認真學,才能在綜合題上不困惑,準確找到合適算法和語句,就像在數學中從高二進入了高三同樣,全是綜合題,須要把所學知識融會貫通,纔能有所做爲,剩下的一個月裏,我須要好好練練了。

相關文章
相關標籤/搜索