一、PTA實驗作業#
1.1計算存款利息
1.1.1實驗代碼截圖

1.1.2數據處理
數據表達:
在"計算存款利息"這道題中,我用到了a b c d e作為變量。我是分別將存款金額money,存期year,年利率rate定義為a b c d,將存款利息定義為e;以上a b c d e都屬於**雙精度浮點型變量**
數據處理:
本題目要求計算存款利息,計算公式為interest=money×(1+rate)year−money,其中interest為存款到期時的利息(稅前),money是存款金額,year是存期,rate是年利率。
輸入格式:輸入在一行中順序給出三個正實數money、year和rate,以空格分隔。
輸出格式:在一行中按“interest = 利息”的格式輸出,其中利息保留兩位小數。
輸入樣例:1000 3 0.025
輸出樣例:interest = 76.89
1.1.3 PTA提交列表及說明

- Q1:一開始並不知道是哪里錯了
- A1:原來是將浮點型變量用int編輯
- Q2:關於間隔
- A2:在程序運行中,輸入多個數據之間必須有間隔。例如:對於scanf()函數對應的的輸入:1000 3 0.025對應第一個%d輸入第一個數 1000,然后打空格。
- Q3:第一道題就開始各種錯誤,有點小崩潰
- A3:最后我利用看書,查資料,問大神,終於是給搞出來了。這道題給我的感悟就是區分好整型變量和浮點型變量以及標識符的問題;如果變量輸入太麻煩,就用其他參量代換
1.2階梯電價
1.2.1 實驗代碼截圖

1.2.2 數據處理
數據表達:
在"階梯電價"這道題中我用到了use,cost變量,由於這兩個變量是**單精度浮點型變量**,所以我使用了float
數據處理:
在一行中輸出該用戶應支付的電費(元),結果保留兩位小數,格式如:cost = 應付電費值;若用電量小於0,則輸出"InvalidValue!"。
輸入樣例1:10
輸出樣例1:cost = 5.30
輸入樣例2:100
輸出樣例2:cost = 55.50
1.2.3 PTA提交列表及說明

- Q1為什么會出現sample2小於50錯誤
- A2討論的方式不對。例如:n<=50在這道題中可以不用討論,而是直接假如n>50
- Q2為什么會出現部分錯誤
- A2經過檢查,我發現我沒有寫頭文件#include<stdio.h>,而是只寫了#include<math.h>
1.3三天打魚兩天曬網
1.3.1實驗代碼截圖

1.3.2數據處理
數據表達:
在"三天打魚兩天曬網"這道題中我用到了*i*作為變量,他是作為一個參量並且是一個**整型變量**
數據處理:####
輸入格式:輸入在一行中給出一個不超過1000的正整數**N**。
輸出格式:在一行中輸出此人在第N天中是“Fishing”(即“打魚”)還是“Drying”(即“曬網”),並且輸出“in day N”。
輸入樣例1:103輸出樣例1:Fishing in day 103
輸入樣例2:34
輸出樣例2:Drying in day 34
1.3.3 PTA提交列表及說明

- Q1為什么會編輯錯誤
- A1將i編輯成了浮點型
- Q2對於&&
- A2&& 的意思是 並且,||是或者
二、閱讀代碼
*ACM解題簡單問題有關分析
l例題:馬上要開始新一輪的acm競賽了,小A和校內的隊員們正在各自加緊訓練中,之后將會按照隊員的學習情況,來划分隊伍(每 個隊伍三個人)。但是,在訓練的同時也不能忘記帶動新人參加競賽,於是,在分隊伍之前,小A對隊員們提出了一個要求,每個隊伍組成必須是:兩個老選手帶一個新選手,或者一個老選手帶兩個新選手。而且,小A想,為了提高拿獎的幾率,能湊成的隊伍越多越好。現在,已知有n個經驗豐富的老選手和m個剛打競賽的新選手,你來告訴小A,最多能湊出多少隊伍. 輸入輸入數據包含多組。輸入僅一行,包括兩個整數n和m(0<=n,m<=5·10^5),n代表老選手數量,m代表新選手數量.輸出輸出僅一行,輸出滿足條件的最多的隊伍數。樣例輸入1 2 6 樣例輸出1 2 樣例輸入2 4 5 樣例輸出2 3####
分析:####
對於第一組樣例,有2名老選手,6名新選手。可以這樣組成隊伍:(l,x,x),(l,x,x),其中l表示老選手,x表示新選手,這 樣組成的隊伍數
是最多的,且是符合題意的。結果為2對於第一組樣例,有4名老選手,5名新選手。可以這樣組成隊伍:(l,x,x),(l,l,x) (l,x,x)其中l表示老
選手,x表示新選手,這樣組成的隊伍數是最多的,且是符合題意的。結果為3
代碼如下:####

- (1)此題用了while循環體語句,if-else語句
- (2)此題的變量分別是n m,且都是整型變量
- (3)此題首先輸入兩個整型變量n m,再用while進行循環,接着用if-else進行條件的判斷,最后用表達式計算輸出結果
優點及可以學習的地方:
- (1)此代碼跟我們之前學習的有點不同,這樣可以開闊我們的眼界,認識新的編程程序
- (2)此代碼出現了新的語句,這讓我們可以提前學習后面的知識,為后面的學習打基礎
- (3)此代碼簡介明了,跟我們所學知識有聯系,這有利於我們復習
三、學習總結
3.1 學習進度條
周/日期 |
這周所花的時間 |
代碼行 |
學到的知識點簡介 |
目前比較迷茫的問題 |
第一周(9.19-9.27) |
8天 |
22行 |
基本的編程題 |
頭文件的設定 |
第二周(9.25-10.4) |
6天 |
16行 |
Markdown語法及華氏度與攝氏度的轉換 |
Markdown語法的有些語法 |
第三周(10.8-10.11) |
3天 |
133行 |
計算函數以及使用if-else語句使用 |
函數的有關編程 |
3.2 累計代碼行和博客字數

3.3 學習感悟
-
- 學習C語言其實是非常有意思的,從做題做到崩潰然后又正確,心情真的可以一下子開心到爆炸。雖然一些東西我們還不是太熟悉,總是
錯,但是一旦上手到熟練,真的滿滿的成就感
-
- 如果碰到有不懂的問題要及時請教,不要一直拖
-
- 要及時地溫故而知新,自覺預習后面的知識