C語言I博客作業04


這個作業屬於哪個課程 C語言程序設計II
這個作業要求在哪里 C語言I作業004
我在這個課程的目標是 更加了解C語言程序設計
這個作業在那個具體方面幫助我實現目標 怎樣使用循環程序設計並計算各項和
參考文獻 程序設計結構類型PTA系統常見問題解答Markdown基本語法

1.PTA實驗作業

1.1 7-4 求平方與倒數序列的部分和

本題要求對兩個正整數m和n(m≤n)編寫程序,計算序列和m​2​​+1/m+(m+1)​2​​+1/(m+1)+⋯+n​2​​+1/n。

1.1.1數據處理##

數據表達:本題用了i,n,m,sum變量。其中i為循環變量,n為正整數,sum為累加和。類型有int(整形)和double(雙精度浮點型)。
數據處理:數據中用到了循環體語句和算術表達式。流程結構是循環結構。

#include<stdio.h>   //方法一
#include<math.h>
int main()
{
    int i,n,m;
    double sum;
    scanf("%d %d",&m,&n);
    i=1;
    sum=0;
    for(i=m;i<=n;i++)
    {
        sum=sum+pow(i,2)+1.0/i;
    }  
    printf("sum = %.6f\n",sum);
    return 0;
}
#include<stdio.h>     //方法二
#include<math.h>
int main(void)
{
	 int i=1,m,n;
	 double sum=0,a=0,b=0;
	 scanf("%d %d",&m,&n);
	 for(i=m;i<=n;i++)
	 {
		a+=pow(i,2);b+=1.0/i;
	 }	
	 sum=a+b;
	 printf("sum = %.6f",sum);
	 return 0;
}

1.1.2實驗代碼截圖

1.1.3 造測試數據

輸入數據 輸出數據 說明
10 20 sum=2585.768771 大於10
1 5 sum=57.28333 大於10
-1 -10 sum=0.000000 小於0
0 0 sum=inf 等於0

1.1.4 PTA提交列表及說明

1.部分正確:將第10行循環執行代碼中未將"i=m"而是碼的"i=1"導致該錯誤發生;
2.部分正確:將第7行中的"&m,&n"更換了位置導致部分正確,及同sample部分出現錯誤;
3.全部正確:通過多次實驗,編譯成功。

1.2 7-5 求交錯序列前N項和

本題要求編寫程序,計算交錯序列 1-2/3+3/5-4/7+5/9-6/11+... 的前N項之和。

1.2.1數據處理

數據表達:本題用了i,n,sum,f變量。其中i為循環變量,n為正整數,sum為累加和。類型有int(整形)和double(雙精度浮點型)。
數據表達:數據中用到了算數表達式:sum+=fi/(2i-1),其中f*=-1。流程結構是循環結構。

1.2.2實驗代碼截圖

1.2.3造測試數據

輸入數據 輸出數據 說明
-5 sum=0.000 小於0
10 sum=0.377 等於10
18 sum=0.386 大於10,小於20
22 sum=0.387 大於20

1.2.4 PTA提交列表及說明

1.編譯錯誤:雖然用了sum,但並未使用該集合,導致錯誤;
2.編譯錯誤:由於找不出其它錯誤,后來使用另外一種方法,即更換成了現在這種編譯方法;
3.答案正確:根據一步步在"C語言編輯器"中更換方法,終於輸出正確,編譯成功。

2.代碼互評

1.同學代碼截圖:


我的代碼截圖:

不同:

1.該同學的代碼比我更加簡潔,僅用了三個變量N,i,sum;而我自己的代碼就運用了比較復雜的六個變量denominator,flag,i,n,item,sum;
2.在賦值方面,該同學用了sum=0;我用了三個賦值flag=1,denominator=1,sum=0;
3.同學在算數中用到了pow(平方),在這里簡便了自己的代碼,有時候真的不一定代碼多才是好,方便簡潔更重要,這方面應該向她學習。

2.同學代碼截圖:


我的代碼截圖:

不同:

1.該同學代碼運用了三個變量N,i,sum;而我用了四個變量i,n,sum,f;相比較來說該同學更加簡潔;
2.在賦值方面,該同學用了sum=0;我用了兩個賦值sum=0.0,f=1.0,n>0;
3.同學在算數中用了pow(平方),簡化了操作步驟,能夠對所學知識融會貫通;而我卻對所學知識有很多不能融匯運用之處,今后要多多學習。

3.學習總結

3.1 學習進度條

這周所花的時間 代碼行 學到的知識點簡介 目前比較困惑的問題
第五周 3小時 17行 初期開始學習“Hello World!" 不知道如何開始編譯
第六周 10小時 27行 提問的智慧及編譯器下載 編譯格式問題
第七周 10小時 95行 流程結構類型及變量類型分類方法 代碼分析不明白以及編譯格式問題
第八周 13小時 115行 循環程序設計及Dev-C++編譯運行等方法 用專業術語將代碼解釋出來及各種賦值運用

3.2 累計代碼行和博客字數

3.3 學習內容總結和感悟

3.3.1學習內容總結

· 在本次作業中,學會了for語句以及指定次數的循環程序設計。例如:第八周PTA作業
· 學會分析錯誤所在,例:在Dev-C++中學會如何簡易編譯,調試操作以及找出錯誤。

3.3.2學習內容感悟

· 從一開始對代碼的不知所措到現在的懵懂,雖然仍是很吃力的學習着這個專業知識,但是從在做作業中獲得的緊迫感和激動是在現實中無法體驗出來的;
· 碼代碼的日常雖然枯燥無味,但是當做出題目,沒有error時心情會瞬間變好,所以在未來要努力寫代碼,減少錯誤的發生。
· 在作業中能逐漸找到的對格式等一系列錯誤的更正方法,但是對於代碼,我還不知道如何用專業術語來表達他們的意思,所以還需要多請教多學習。


免責聲明!

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



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