C語言部落格05 指標

2022-04-12 21:06:19 字數 1748 閱讀 3019

本章學習了指標的應用,指標是c語言中很有特色的乙個東西,其他的語言基本沒有這個功能,直接在記憶體上對變數賦值,同時也學到了很多函式可應用在字串中運用比如strlen、strcat、

strcmp等等,對陣列的大小進行控制也學到了乙個新的方法,動態記憶體分配,可以對陣列的大小進行控制,防止像以前那樣給陣列定義過大的範圍,浪費記憶體。以後也能更好的運用陣列。

學完了指標,以後在寫程式時需要用函式對變數進行賦值時就不用那麼多函式一一進行返回值,可以直接在函式中用指針對函式外面的變數進行修改。

給定一句英語,要求你編寫程式,將句中所有單詞的順序顛倒輸出。

輸入字串str

x=strlen(str);

max=x-1;

for i=max to 0 then

if(字元等於' ') then

for j=i+1 to max then

輸出下標從i+1到max的字元

輸出空格

q1:剛開始段錯誤因為陣列的範圍不夠

a1:剛開始用的是二維字元陣列做的,一直除錯還是做不出來,後來就改成現在這個一維陣列的做法

q2:輸入乙個單詞但單詞前面有空格時答案錯誤

a2:在輸入空格前加了乙個判斷是否為乙個單詞就解決了

switch(level)  then         //使用者選擇的難度等級

case 1:

生成一位數隨機數和乙個運算子;break;

case 2:

生成兩位數隨機數和兩個運算子;break;

case 3:

生成三位數隨機數和兩個運算子;break;

計算運算結果answer

end switch

將運算子存入exp陣列

返回answer

將一條算術表示式儲存在乙個字元陣列裡最後輸出讓使用者看到並計算結果。用字元陣列輸出一整條語句,可以使**更簡潔,但是中間的步驟會比較多,要將數字轉化為字元再存入字元

陣列中。如果直接輸出的話**就比較簡單思路也比較簡單,但是思路並不怎麼清晰,只是得到乙個數就輸出乙個數,隨機生成乙個運算子就輸出乙個運算子。在寫這種**比較多的程式中,當我們想好思路後開始打**,不要一鼓作氣從頭打倒尾,這樣中間可能會出現很多錯誤,而且這種**比較多的程式中在中間找錯誤不是一件容易的事,

所以在寫大作業的時候,最好是分塊來寫,先把某一功能的**寫完然後對相應的錯誤進行修改,這樣修改的話會比較容易找出錯誤,確定這一功能沒什麼問題後再開始寫實現下一功能的

**

C語言部落格05 指標

指標的理解很抽象,對於指標的運用不太熟練,特別是指標很多時候是運用在函式裡面,和函式混合起來運用,指標為引數時,就特別的亂,不知道怎麼傳參到函式,然後函式的傳參也沒學好。所以導致指標傳參時不知道怎麼傳,傳什麼東西進去。100將n個字串按從小到大排序的氣泡排序法 char a 100 12 定義陣列長...

C語言部落格作業05 指標

1.2.1 學習體會 老師這次沒布置課堂派預先作業就直接開講,感覺上課聽的不是很懂。1.2.2 累計 125分 字串的氣泡排序 3.1.1 演算法分析 輸入n,k n 定義二維陣列a和臨時陣列temp for i 0 to n do gets a i end for for i 1 to k do ...

C語言部落格作業05 指標

2.指標變數用於存放位址,在函式中呼叫指標可以進行位址的傳輸,從而可以改變位址的內容,減少全域性變數和區域性變數的使用 3.陣列在函式中進行傳輸時,若函式的形參為指標變數,可以直接傳輸首位址,而陣列名就代表首位址 4.本章還學習了字串連線函式strcat 字串比較函式strcmp,字串長度行數 st...