C語言作業

來源:互聯網
上載者:User

標籤:etc   使用   注釋   分享   1.3   blog   結果   3.2   字元數組   

一、PTA實驗作業(4分)題目1: 將數組中的數逆序存放1. 本題PTA提交列表(要提交列表,不是結果)

2. 設計思路(用代碼錶示扣分)

定義n用於存放輸入的數字個數,number[999]用來存放輸入數字,t,i用於討論;
輸入n
for(i=0;i<=n-1;i++){
輸入number[i];
}
如果n%2==0{
定義k
for (k=0;k<=(n/2)-1;k++){
t=number[k];
number[k]=number[n-1-k];
number[n-1-k]=t;
}
定義k
for(k=0;k<=n-1;k++){
輸出number[k];
if(k!=n-1){
輸出空格
}
}
}
否則(也就是n%2不為0) {
for(k=0;k<=n/2;k++){
t=number[k];
number[k]=number[n-1-k];
number[n-1-k]=t;
}
for(int k=0;k<=n-1;k++){
輸出number[k]
if(k!=n-1){
輸出空格

3.代碼(注意,,,。不要粘貼部落格上。不用用···文法去渲染)

4.本題調試過程碰到問題及PTA提交列表情況說明。

1.需要再定義一個變數t用於暫存前一個number的值,否則後一個number與前一個交換後還是原來的值
2.在這裡如果是奇數則中間數難以表達,於是我將奇偶分開討論

題目2:簡化的插入排序1. 本題PTA提交列表(要提交列表,不是結果)

2. 設計思路(用代碼錶示扣分)
定義 number[10]用於存放數組十個數;定義n用於存放輸入數位個數,a;輸入n;當n不為0{for(int i=0;i<n;i++){    輸入number[i]}輸入aif(a<number[0]){        輸出a的值    }for(int i=0;i<n;i++){    輸出number[i]    if(a>number[i]&&a<number[i+1])    輸出a}if(a>number[n-1]){        輸出a;    }}    else {        輸入a的值;                    輸出a的值;    }
3.代碼(注意,,,。不要粘貼部落格上。不用用···文法去渲染)

4.本題調試過程碰到問題及PTA提交列表情況說明。

1.題目要求每個數字後邊要有空格,當時漏了
2.有負數要插在頭,當時錯

題目3:點贊1. 本題PTA提交列表(要提交列表,不是結果)

2. 設計思路(用代碼錶示扣分)
輸入n定義數組a[n][10] for(i=0;i<n;i++) 輸入k for(j=0;j<k;j++)  輸入a[i][j];遍曆a數組   t=a[i][j]  b[t]++        定義max=b[0];m=0;for(i=1;i<1001;i++){    if(b[i]>=max){        max=b[i];        m=i;    }}輸出m和max的值;

;###3.代碼(注意,,,。不要粘貼部落格上。不用用···文法去渲染)

4.本題調試過程碰到問題及PTA提交列表情況說明。

1.全不同, 取到編號邊界值,當時多次輸出

  1. 有並列, 取編號最大者,後設計一個max變數解決

    二、本周題目集的PTA最後排名。(2分)PTA排名

    三、同學代碼結對互評(1分)1.互評同學名稱 吳軍霖2.My Code、互評同學代碼

    我的:

大佬的:

3.我和同學代碼不同在哪裡?有哪些各自優勢?你更喜歡哪種代碼風格?如果同學代碼有錯的也請幫忙指出來哪裡出問題。My Code:當時沒注意到數組的特殊性,就直接用代入法寫,有點是方便,但是太耍小聰明(當時沒看出來題目要幹啥)他的代碼:傳統做法,並且排序更加整齊完美,牌面看起來也更舒服你更喜歡哪種代碼風格? 按牌面講,他的更好看,思路也更清晰,但是考試的時候建議還是用我的寫節約時間

注意:第3項是評分重點,一定要有針對性說出問題,別都說好話,請專業去說他代碼有哪些優勢、哪些劣勢。

四、本周學習總結(3分)1.你學會了什嗎?1.1 C中如何儲存字串?

在c語言中儲存一個字串,一般有兩種方法,一種是字元指標,一種是使用字元數組.

1.2 字串的結束標誌是什麼,為什麼要結束標誌?

‘\0‘是字串數組的結束標誌,因為有利於知道字串的sizeof

1.3 字串輸入有哪幾種方法?

1.scanf(“%s”,&ch)
2.for(i=0;i<n;i++)
scanf("%c",ch[i])
3.i=0;
while((ch[i]=getchar())!=‘\0‘){i++}

1.4 數字字元怎麼轉整數,寫個虛擬碼?

用字元的值減去‘0‘;
定義字元數組char c;
定義整型變數int n;
c = getchar();
n = c-48;/48是0的ascii碼值/
輸出n

1.5 16進位、二進位字串如何轉10進位?寫虛擬碼?

定義字串b【999】,輸入b
當a不為0
number=number*16+b[i]-‘0‘;

2.本周的內容,你還不會什嗎?

1.還不會關於字元數組怎麼從中間插入 刪掉字元(PTA題)
2.約瑟夫環不熟練(PTA猴子當大王)

3.期中考試小結3.1 你認為為什麼沒考好?

1.基礎不紮實,送分沒拿到
2.大題代碼寫太亂,明明思路全是對的,但閱卷人看到有太低級的錯誤以及沒注釋的卷面就沒心情網細看了

3.2 羅列錯題。

請在選擇題、填空題、改錯題、編程題分別舉一題說明為什麼錯了,怎麼改?
1.選擇題:
6.設變數已經正確定義並賦值,正確C語言語句是
A、x+n=i; B、x=y==5; C、x=n%2 D、x=5=4+1;
答案為B 錯選C 原因:沒看到C後沒分號,感覺對了就選了
2.填空題

3.改錯題
第一題只看到語法錯誤,沒注意到是否符合程式要求,對於函數的基礎略差
4.編程題
計算群組合數定義組合數計算時用了int,應改成double

3.3 下半學期要怎麼調整C的學習?

不單純的打pta 還要對書本知識有針對性的複習

C語言作業

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.