標籤:實驗 進位 使用 插入排序 c語言 http 字元數組 常量 風格
一、PTA實驗作業題目1:7-1 將數組中的數逆序存放1. 本題PTA提交列表
2. 設計思路
- 1.定義a數組用於存放數值,定義b數組用於逆序排列,定義變數n,i,j
- 2.for(i=0;i<=n-1;i++)在a數組中輸入值
- 3.for(j=0;j<=n-2;j++)將a中數逆序放入b中
4.輸出b數組
3.代碼4.本題調試過程碰到問題及PTA提交列表情況說明。
格式錯誤:最後一個沒有空格部分正確:最開始的時候i的輸出範圍寫錯以至於少了一個數。
題目2:7-4 簡化的插入排序1. 本題PTA提交列表2. 設計思路
- 1.定義數組a,定義變數N,X,y,c為判斷變數
- 2.將數存放a中
- 3.若N為0,直接輸出X
- 4.N不為0,進入迴圈從右開始與X一次比較 ,當X<a[j]時a[j+1]=a[j],即為讓之前的元素右移
- 5.否則a[j+1]=X並使y=1
- 6.y=0,即X比數列最小值還小,a[0]=X;
7.定義變數c輸出a[c]
3.代碼4.本題調試過程碰到問題及PTA提交列表情況說明。
沒有N為0時的直接輸出,沒有X最小時的輸出。
題目3:7-7 找鞍點1. 本題PTA提交列表2. 設計思路
- 1.定義變數n,定義一個二維數組a[80][80],
- 2.將數存放於二維數組a中
- 3.當該數組僅有一個元素時,直接輸出0 0
- 4.否則,定義max,以及一個一維數組b,
- 5.利用迴圈找出每一行最大的數,並存放於b中
- 6.定義min,以及一個一維數組c,
- 7.利用迴圈找出每一列最小的數,並存放於c中
- 8.定義變數t用於判斷,將b和c數組中對應的元素比較,若相等則輸出下標並t=1
9.否則若t=0則輸出NONE
3.代碼
4.本題調試過程碰到問題及PTA提交列表情況說明。最開始的答案錯誤,是由於迴圈中判斷的情況沒有“=”以至於少一個數,後來由於沒有加判斷n=1的情況,沒有輸出0 0
二、本周題目集的PTA最後排名。三、同學代碼結對互評1.互評同學名稱:陸勇治2.My Code、互評同學代碼
3.我和同學代碼不同在哪裡?有哪些各自優勢?你更喜歡哪種代碼風格?如果同學代碼有錯的也請幫忙指出來哪裡出問題。他用嵌套迴圈直接在迴圈內進行比較並輸出,而我的則是利用一個迴圈在迴圈內做出了分支判斷,他的代碼簡單但是不是太容易看懂,我的比較長但是容易看懂,更喜歡容易看懂的風格。
四、本周學習總結1.你學會了什嗎?1.1 C中如何儲存字串?字串可以放在一維字元數組中,還可以使用字串常量
1.2 字串的結束標誌是什麼,為什麼要結束標誌?結束標誌是\0,使用結束標誌來控制迴圈結束
1.3 字串輸入有哪幾種方法?賦值法,迴圈輸入
1.4 數字字元怎麼轉整數,寫個虛擬碼?
- 1.定義變數i,numberstr[10]
- 2.輸入字串,
- 3.利用迴圈,number=number*10+str[i]-‘0‘分別轉化
4.輸出整數
1.5 16進位、二進位字串如何轉10進位?寫虛擬碼?
- 1.定義變數number放數字串用a存放
- 2.若字元0<a<9,number=number16+a[i]-‘0‘
- 3..若字元A<a<Z,number=number16+a[i]-‘A‘+10
- 4.若字元a<a<z,number=number*16+a[i]-‘a‘+10
5.輸出number
2.本周的內容,你還不會什嗎?遇到空格斷行符號的輸入輸出,二維數組不太熟悉,二維數組的下標有時混亂,幾種排序法不太會
3.期中考試小結3.1 你認為為什麼沒考好?基礎差,能力弱,對於一些基本概念不知道,讀程式的能力差
3.2 羅列錯題。
3.3 下半學期要怎麼調整C的學習?首先要有耐心,其次要有一個端正的態度,c不只是編程還有一些基礎的知識點要記牢,不能不重視課本上的基礎知識,否則就如本次考試一樣,選擇題錯的一堆,另外在平常編程的時候也要注意錯誤的積累以及個人常犯錯誤的糾正。
C語言部落格作業--一二維數組