C 氣泡排序以糾正內部所有錯誤

發布 科技 2024-08-09
12個回答
  1. 匿名使用者2024-01-31

    #include

    void main()

    int a[10],i,j,c;

    printf("輸入數字 10");

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

    scanf("%d",&a[i]);在這裡,整數應該用格式化程式 %d 輸入,而不是 %s,並且 a[i] 前面應該有乙個 &

    for(i=0;i<9;i++) 其中 i<9,沒關係,不要去 10for(j=0; j<10-i-1;j++) 這裡是 j<10-i-1if(a[j]>a[j+1])。

    c=a[j];

    a[j]=a[j+1];

    a[j+1]=c;

    在這裡,我們應該用大括號將這三個句子括起來。

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

    printf("%d",a[i]);

  2. 匿名使用者2024-01-30

    #include

    鏈結標準標頭檔案。

    #definen5

    定義常量 n 並賦值 5

    voidmain()

    main 函式條目。

    週期結束。 for(i=0;我開始了外圈for迴圈,從i 0開始,每次1,直到i = 4,從此交換大小變數,這樣大值就被提出}來結束內圈。

    結的外層和內層迴圈完成分揀。

    printf("最後的訂單是:");在螢幕上明確“最後排序為:”並換行。

    for(i=0;I 類似於起始 for 迴圈。

    結束迴圈輸出。

    printf("");

    輸出換行到螢幕,你看不到任何效果,你可以刪除它}來結束 main() 函式。

  3. 匿名使用者2024-01-29

    sort1(t[5], 5);

    更改為 sort1(t,5);

    #include

    void sort1(int t, int x)}int main()

    這是從小到大的一行。

  4. 匿名使用者2024-01-28

    首先,你根本沒有輸入和輸出。

    其次,冒泡環的邊界條件是錯誤的,當 i==n-2, j>=i+1 時,j 可以得到 n-1,因此下面的判斷語句中的 a[j+1] 可以取 a[n],越界。

    #include

    #define n 10

    int main ()

    printf("output the sorted numbers:");

    for (i=0; i

  5. 匿名使用者2024-01-27

    下面是四個數字的示例,以便於理解;

    #include

    main()

    定義乙個陣列,它是這次要排序的數字的組合; 請注意,這裡的陣列中有 4 個數字,所以理論上:a[4]=;

    初始檢驗 i=1;並確定 i 是否小於或等於 3; 如果滿足條件,則進入 for 迴圈; (4個數字,成對比較需要3輪比較,i代表輪數; 我需要完成三輪作業,分別是1、2、3; i=4 將跳出 for 迴圈)。

    for(i=1; i<=3; i++)for(i=0; i<4; i++)

    *執行結果如下:

    第乙個數字是:3

    第二位數字是:6

    第三位數字是:10

    第四位數字是:30*

  6. 匿名使用者2024-01-26

    您好親愛的,我很高興為您解答: 用C語言編寫氣泡基本排序問題的方法如下: C語言中的氣泡排序演算法使用氣泡排序方法將任何輸入的10個數字從小到大排序。

    實現過程:(1)氣泡排序的整個過程通過兩個for迴圈實現,外for迴圈決定氣泡排序的通過次數,內部for迴圈決定每次行程的成對比較次數。 (2) 程式如下:

    結果:請輸入10個號碼:66 32 23 45 25 5 15 69 46 37 排序後的順序為:

    5 15 23 25 32 37 45 46 66 69 技術要點: 這個例子需要用冒泡法把10個數字從小到大排序,冒泡法的基本思想是,如果要對n個氣泡的數量進行排序,那麼就需要做n-1比較, 在第乙個比較中,您要進行 n-j 成對比較,而在 J 腿比較中,您需要進行 n-j 成對比較。從這個基本思想可以看出,通過次數決定了比較兩對的次數,因此很容易將兩個 for 迴圈連線起來。

  7. 匿名使用者2024-01-25

    for (int i = 0;i < 10;i++)for (int j = i;j < 10;j++)if (a[i] >a[j]) 用於按公升序對陣列 a[10] 進行排序。

  8. 匿名使用者2024-01-24

    這個**通過動畫顯示了氣泡排序的原理。 希望對大家了解氣泡分揀的原理有所幫助。 如果您覺得它有幫助,請喜歡它,如果您關注此號碼會更好。 如果您有任何問題,也可以在下面留言。

  9. 匿名使用者2024-01-23

    答]:在氣泡排序的過程中,某些排序碼可能會朝著與某個氣泡中的最終排序相反的方向移動。記錄 13、79、56、20、40 被排名,第乙個氣泡後的結果是 13、56、20、40、79。

    排序程式碼 56 的移動方向與最終方向相反。

  10. 匿名使用者2024-01-22

    如果需要,下面的 3 行用 {} 括起來。

  11. 匿名使用者2024-01-21

    第二個用於 j=i j,並且不使用 j

    for i=o ifor j=i+1 j

  12. 匿名使用者2024-01-20

    泡沫法是交換,每一輪,從第一輪開始,如果每一輪都比第二輪大,就兌換,然後比較第二輪和第三輪,如果第二輪大於第三輪,就兌換。 以此類推,在第一輪之後,最大的乙個在最後。 第二輪之後,第二大的排名也很好,總共有n-1輪(n個數字排序)。

    選擇方法是將第一輪中的每個數字依次與第乙個數字進行比較,如果第乙個數字大於第乙個數字,則交換第乙個數字,使第一輪中第乙個數字最大。 第 2 輪,每個剩餘數字和第 2 個比率...... 如果你不明白,那就算了。

相關回答
10個回答2024-08-09

對數陣列的六個數字,帶有這樣的冒泡:

for i=1 to n-1 '進行 n-1 輪比較。 >>>More

11個回答2024-08-09

樓主,你應該說,你的方案在實施的時候,“第乙個數字大於第二個數字按公升序排列時必須滿足第乙個數字,排序排列時第乙個數字必須小,第二個數字必須滿足,否則會有錯誤”,不要說人們在氣泡排序時會有這樣的漏洞。 氣泡排序的思路:比較兩個相鄰的,並根據排序要求將它們移置(公升序和降序顛倒)。 >>>More

15個回答2024-08-09

寬歌的閉合線是冒泡和分類的。

3個回答2024-08-09

int i,j,temp;

scanf("%d",&a[j]);這裡沒有值,此外,您最初設定了 5 個數字,那麼您要輸入什麼? >>>More

5個回答2024-08-09

include 包含標準 I/O 標頭檔案。

define n 10 定義乙個值為 10main() main 函式的巨集 n。 >>>More