C語言學習(二)

2021-08-21 17:52:09 字數 520 閱讀 5003

學習了冒泡法之後才逐漸發覺了c語言的難處,冒泡法在第一次接觸時,極容易在邏輯上犯錯,導致思維轉不過來。

首先,在定義時,為了優化**,採用了int len = sizeof(a)/sizeof(int)為下面**所用的數字。由於int型固定為4位元組,而主要根據陣列a裡的個數所確定len的數字。

下面是冒泡法的**:

#include

int main()

;int x,y,temp;

int len=sizeof(a) / sizeof(int);

for(x = 0;x < len -1;x++)

}for(y = 0;y < len ;y++)

printf("\n");

}return 0;

}其中,因為假如10個數字,則len為10,外迴圈為兩個數比大小,最多只有9次,所以為len-1,而剩下的數迴圈的次數則是減去之前的數迴圈次數來定的,所以為len-x-1。

冒泡法的核心,就是中間的if判斷語句,根據此語句,將大小不一的數字順序排放。

C語言學習筆記(二)

11 structure 結構體可以用或者來進行初始化 例如 但是 本身不是expression,不能對struct進行賦值!以下用法是錯誤的 c99增加了對一種語法如下,但是vc9中不支援這種語法,因此應該盡量避免採用。結構體的成員名和變數名不在同一命名空間中,因此兩者不會出現明明衝突。另外,結構...

C語言學習筆記(二)

c語言學習筆記 二 八進位制 把二進位制所有數字從右向左的每三個數字分成一組,每組用乙個數字替代,替換後的結果叫八進位制 0110 1010 01 101 010 1 5 2 八進位制 o 佔位符 0152 八進位制開頭數字必須用0開頭 十六進製制 把二進位制所有數字從右向左的每四個數字分成一組,沒...

C語言學習筆記(二)

1.題目 編寫程式,列印菱形星號組合 1 include 2 int main 3 2.a 10 逆序輸出陣列 1 include 2 int main 3 4 int n,i 5 for i 0 i 5 i 6 11 for i 0 i 9 i 12 15 return 0 16 173.氣泡排序...