C 氣泡排序

2022-03-17 19:02:43 字數 2206 閱讀 5647

氣泡排序

c語言在執行的時候,不會幫我們檢查陣列的下標。

氣泡排序:有n個數字,需要進行 n - 1 趟比較大小(元素的個數減去 1)。外層迴圈 for( int i = 0; i < count - 1; i ++)

n 個數字 第一趟比較的次數是 n - 1 ,第n趟比較的次數是 n - 1 次。

比較的趟的序號 i 與 該趟比較的次數 n - 1  相加之和等於陣列元素的個數。內層迴圈  for ( int j = 0; j < count - 1 -i ; j ++ )

需要比較的趟數 = 元素個數 - 1,也就是外層迴圈。

拿前者與後者與後者進行比較,如果前者比後者大就交換位置

//

陣列有20 個元素【 20 50 】,安公升序排序

int a[20] = ;

for (int i = 0; i < 20; i++)

for (int i = 0; i < 19; i++) }}

printf("

按公升序排好序的陣列:\n");

for (int i =0 ; i < 20; i++)

//陣列有 10個元素【 10 40】,按降序排序

int a[10] = ;

int count = 10

;for (int i = 0; i < 10; i++)

for (int i = 0; i < count - 1; i++) }}

printf("

按降序排好序的陣列:\n");

for (int i =0 ; i < 10; i++)

7.//字元陣列字元型的陣列用來存放字元型的變數

chara[20] = "you are beautiful";

//字串就是乙個字元陣列

charcarr[20] = ;

//字串的形式比字元陣列多乙個』\o『 空格

chara1 = "henan";

chara2 = ;

printf("%lu---%lu \n",sizeof(a1),sizeof(a2));//sizeof();  使用的格式化輸出符號是    %lu

在定義字串字元個數的時候,要定義它為 可使用的個數+1 個。可以用  for 迴圈去遍歷字元陣列的元素。char cc[100]='' sddfgdfghdfh''  字串 int a = sizeof(cc)/ 1結果為 100個能夠使用的,這是因為他已經定義為固定長度的了。字串是雙引號引起來的,實際上就是乙個字元陣列,他與字元陣列的區別就是以 『\0』 未結束標誌。      

strlength(); 求字串長度的函式  例如: ;

字串拷貝 strcpy ( 拷貝字串的目標, 要拷貝的字串)他是整體替換 

字串拼接 strcat(拼接目標,拼接字串)

就是用後面的 「 拼接字元」  換替換 「 拼接目標」 後面的\0 。

字串比較 strcmp (字串1, 字串2).分別把字串1 字串2),對應位置的字母取出來,然後用前面的對應的字母的ascaii 減去 後面的字串的對應的字母的ascii 與0比較,一旦比較出大小就立即停止,大於0就是說 字串1 大於 字串2

%s 是格式轉換符printf(" %s ", 字串);。

**實戰

char str[30] = "

my name chenshiya is";

//int max = 0, lsum = 0, length = 0, k = 0;

//for (int i = 0; i < 30; i++)

//if (str[i] == ' ' || str[i] == '\0') //}

//}//printf("\n最長的單詞是:\n");

//for (int i = k - max; i < k; i++)

//printf("\n");

//求乙個 2/1 3/2 5/3 8/5 13/8 21/13 .....的前20個數的和

inti;

floata, b, c, s;

a = b = 1.0;

c = 0;

s = 0;

for(i = 0; i < 20; i++)

printf("\n%f\n", s);

難點是:寫程式的方法的實現,比如說鞍點問題

C 氣泡排序

using system using system.collections.generic using system.linq using system.text 個數是 j 1 num j double.parse console.readline console.writeline 你剛才輸入的...

C 氣泡排序

class program endregion region 該方法獲得需要排序的陣列,表呼叫排序方法進行排序 該方法獲得需要排序的陣列,表呼叫排序方法進行排序 public static void sortednumbers 個數字 numbercount for int i 0 i number...

氣泡排序 C

氣泡排序 1 排序方法 將被排序的記錄陣列r 1.n 垂直排列,每個記錄r i 看作是重量為r i key的氣泡。根據輕氣泡不能在重氣泡之下的原則,從下往上掃瞄陣列r 凡掃瞄到違反本原則的輕氣泡,就使其向上 飄浮 如此反覆進行,直到最後任何兩個氣泡都是輕者在上,重者在下為止。1 初始 r 1.n 為...