-
#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]);
-
#include
鏈結標準標頭檔案。
#definen5
定義常量 n 並賦值 5
voidmain()
main 函式條目。
週期結束。 for(i=0;我開始了外圈for迴圈,從i 0開始,每次1,直到i = 4,從此交換大小變數,這樣大值就被提出}來結束內圈。
結的外層和內層迴圈完成分揀。
printf("最後的訂單是:");在螢幕上明確“最後排序為:”並換行。
for(i=0;I 類似於起始 for 迴圈。
結束迴圈輸出。
printf("");
輸出換行到螢幕,你看不到任何效果,你可以刪除它}來結束 main() 函式。
-
sort1(t[5], 5);
更改為 sort1(t,5);
#include
void sort1(int t, int x)}int main()
這是從小到大的一行。
-
首先,你根本沒有輸入和輸出。
其次,冒泡環的邊界條件是錯誤的,當 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
-
下面是四個數字的示例,以便於理解;
#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*
-
您好親愛的,我很高興為您解答: 用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 迴圈連線起來。
-
for (int i = 0;i < 10;i++)for (int j = i;j < 10;j++)if (a[i] >a[j]) 用於按公升序對陣列 a[10] 進行排序。
-
這個**通過動畫顯示了氣泡排序的原理。 希望對大家了解氣泡分揀的原理有所幫助。 如果您覺得它有幫助,請喜歡它,如果您關注此號碼會更好。 如果您有任何問題,也可以在下面留言。
-
答]:在氣泡排序的過程中,某些排序碼可能會朝著與某個氣泡中的最終排序相反的方向移動。記錄 13、79、56、20、40 被排名,第乙個氣泡後的結果是 13、56、20、40、79。
排序程式碼 56 的移動方向與最終方向相反。
-
如果需要,下面的 3 行用 {} 括起來。
-
第二個用於 j=i j,並且不使用 j
for i=o ifor j=i+1 j
-
泡沫法是交換,每一輪,從第一輪開始,如果每一輪都比第二輪大,就兌換,然後比較第二輪和第三輪,如果第二輪大於第三輪,就兌換。 以此類推,在第一輪之後,最大的乙個在最後。 第二輪之後,第二大的排名也很好,總共有n-1輪(n個數字排序)。
選擇方法是將第一輪中的每個數字依次與第乙個數字進行比較,如果第乙個數字大於第乙個數字,則交換第乙個數字,使第一輪中第乙個數字最大。 第 2 輪,每個剩餘數字和第 2 個比率...... 如果你不明白,那就算了。
樓主,你應該說,你的方案在實施的時候,“第乙個數字大於第二個數字按公升序排列時必須滿足第乙個數字,排序排列時第乙個數字必須小,第二個數字必須滿足,否則會有錯誤”,不要說人們在氣泡排序時會有這樣的漏洞。 氣泡排序的思路:比較兩個相鄰的,並根據排序要求將它們移置(公升序和降序顛倒)。 >>>More
int i,j,temp;
scanf("%d",&a[j]);這裡沒有值,此外,您最初設定了 5 個數字,那麼您要輸入什麼? >>>More
include 包含標準 I/O 標頭檔案。
define n 10 定義乙個值為 10main() main 函式的巨集 n。 >>>More