c語言 輸入數依次從大到小排序,C語言 輸入10個數依次從大到小排序!

2022-02-02 14:55:16 字數 6448 閱讀 7480

1樓:

用陣列來存放十個數字,使用「氣泡排序」來實現排序。10個數字需進行9輪掃瞄,每次掃瞄時比較相鄰的二個數,如它們不符合要求的大小關係,就交換它們的位置。第一輪掃瞄結束時,最大的數就「沉」到最後。

於是第二的範圍就少了乙個數。再進行第二兩棲型、第三輪,…——直到第9輪就完成了。最後輸出結果。

#include

int main()

printf("排序以後的數:\n");

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

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

printf("\n");

system("pause");

return 0;

}如果要從大到小排,只要把上面的交換條件

if(a[j]>a[j+1])換為

if(a[j]

2樓:喜歡棉麻的小生

#include

int main()

a[j] = in; // 插入輸入的值

}for (i = 0; i < 10; i++) // 輸出排序後結果

printf("\n");

return 0;}

c語言如何輸入十個數,按從大到小順序排列!

3樓:冰封月

用選擇排序法編寫c語言,實現從鍵盤上輸入10個數,按從大到小的順序排序輸出。**如下:

#include

int main()

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

printf("輸入數");

for (i = 0; i < 10; i++)scanf("%d",&a[i]);

for (i = 0; i < 10; i++)for (j = i + 1; j < 10;j++)if (a[i] < a[j]){

t = a[i];

a[i] = a[j];

a[j] = t;

printf("從大到小");

for (i = 0; i < 10; i++)printf("%2d", a[i]);

return 0;

擴充套件資料:**還可以設計,如下:

#include

int main()

int a[10],i,j,t;//定義陣列;

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

scanf("%d",&a[i]);//給陣列賦值;

for(i=0;i<9;i++)//10個數,進行9輪比較;

for(j=0;j<10-i;j++){//第乙個數比較9次,依次遞減;

if(a[j]>a[j+1]) {//交換值;

t=a[j];

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

a[j+1]=t;

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

printf("%d\n",a[i]);//輸出陣列的值;

return 0;

printf("the sorted numbers:\n");

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

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

printf("\n");

4樓:香料魔法

**如圖所示:

#include

int main()

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

printf("請輸入十個數:");

for (i = 0; i < 10; i++)scanf("%d",&a[i]);

for (i = 0; i < 10; i++)for (j = i + 1; j < 10;j++) //迴圈if (a[i] < a[j]){

t = a[i];

a[i] = a[j];

a[j] = t;

printf("從大到小排序後:");

for (i = 0; i < 10; i++)printf("%2d", a[i]);

return 0;

擴充套件資料c語言順序排列題的其他解法

#include

int main()

int a[10];

int i,j;

int temp;

printf("請輸入10個整數:");

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

scanf("%d",&a[i]);

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

for(j=0;j<9-i;j++)

if(a[j]>a[j+1])

temp=a[j];

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

a[j+1]=temp;

printf("排列後順序為:");

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

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

printf("\n");

return 0;

5樓:風若遠去何人留

可以輸入同時進行插入排序,提高效率。

**如下:

#include

int main()

a[j] = t;//插入

}for(i=0;i<10;i++) //輸出printf("\n");

return 0;}

6樓:

#include

void main()

printf("the sorted numbers:\n");

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

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

printf("\n");

} 已經上機執行過 就是用冒泡法啦

你應該知道怎麼執行了吧 輸入那十個數字 執行結果就出來了啦

7樓:匿名使用者

void main()

for(int i=0;i<10;++i)//依次吧十個數放在合適的位置上

for(int j=i+1;j<10;++j)//把乙個數先放在合適的位置上

if(s[i]

for(int x=0;x<10;x++)printf("%d ",s[x]);}

8樓:不破_樓蘭

#include

#define n 10

int main()

while(j > 0) }

}for (i = 0; i < n; i++)printf("\n");}

c語言:對輸入的十個數進行從小到大排序

9樓:很多很多

2、此處用到快速排序思想,通過一趟排序將要排序的資料分割成獨立的兩部分,即這裡用i和j兩個變數分割資料,然後一部分的所有資料都比另外一部分的所有資料都要小,接著對這兩部分資料分別進行比較排序,整個排序過程可以遞迴進行,以此達到整個資料變成有序序列:

3、接著編寫主函式,主函式中定義乙個陣列,然後用scanf接受陣列,使用者輸入10個數以後,會將數存在陣列array中,然後呼叫上面處理排序的函式,函式的輸入就是剛才輸入的數,最後在把排序的結果輸出即可:

4、最後編譯執行,輸入10個數,最後控制台輸出了排序的結果,證明程式的邏輯是沒有問題的。以上就是c語言輸入10個數排序的演示:

10樓:知道小爺

以兩種方法為例,分別是冒泡法和選擇法。

【一】冒泡法

冒泡法的基本思路:每次將相鄰的兩個數相比較,將小的調到前頭。

如果有n個數,則要進行n-1趟比較。在第一趟中要進行n-1次兩兩比較,在第j趟比較中要進行n-j次兩兩比較。

#include

#pragma warning(disable:4996)

int main()

}}  printf("the sorted numbers:\n");

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

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

printf("\n");

system("pause");

return 0;

}【二】選擇法

選擇法的基本思路:將前邊的數依次和後邊的每個數比較,每次挑出最小的放在前面。

如果有n個數、一共用進行n-1輪比較a[1]~a[n]就已按從小到大的順序存放了。

#include

#pragma warning(disable:4996)

int main()

}}  printf("the sorted numbers:\n");

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

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

printf("\n");

system("pause");

return 0;}

11樓:匿名使用者

你可以寫乙個簡單的連結串列

線性物理結構對這方面處理比較簡單

12樓:沒有水印的鈔票

排序方法太多,就用其中最簡單的乙個冒泡法吧include

void bubble(int *a,int n) /*定義兩個引數:陣列首位址與陣列大小*/ }

int main()

bubble(arr,10);

return 0;}

13樓:莫雲凌珏

#include

main()

printf("\nafter sorting:\n");

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

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

c語言~十個數字從小到大怎麼排列~從大到小呢~

14樓:格調

用陣列來存放十個數字,使用「氣泡排序」來實現排序。10個數字需進行9輪掃瞄,每次掃瞄時比較相鄰的二個數,如它們不符合要求的大小關係,就交換它們的位置。第一輪掃瞄結束時,最大的數就「沉」到最後。

於是第二的範圍就少了乙個數。再進行第二兩棲型、第三輪,…——直到第9輪就完成了。最後輸出結果。

#include

int main()

printf("排序以後的數:\n");

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

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

printf("\n");

system("pause");

return 0;

}如果要從大到小排,只要把上面的交換條件

if(a[j]>a[j+1])換為

if(a[j]

在c語言中如何用冒泡法,輸入10個人的序號和成績,對成績從大到小進行排序,輸出排序後的序號和成績

15樓:馬小芳

#include

int main()

for(j=0;j<9;j++)

for(i=0;i<9-j;i++)

if(a[i];//將學號和成

自績都交

bai換

printf("the sorted is:\n");

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

//輸出du整理的資料

zhiprintf("\n");

return 0;}這是

dao結果

c語言~十個數字從小到大怎麼排列~從大到小呢~

16樓:啦啦啦咯哦

//要求任bai意輸入du10個數,然後按從小到zhi大順序輸出

dao#include

int main()

for(i=0;i<9;i++)}}

printf("排列後

屬順序為:");

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

printf("\n");

return 0;}

17樓:聽不清啊

用陣列來存放十bai

個數字du,使用「氣泡排序」來實

zhi現排序。10個數字需進行

dao9輪掃回描,每次掃瞄時比較答相鄰的二個數,如它們不符合要求的大小關係,就交換它們的位置。第一輪掃瞄結束時,最大的數就「沉」到最後。於是第二的範圍就少了乙個數。

再進行第二兩棲型、第三輪,…——直到第9輪就完成了。最後輸出結果。

#include

int main()

printf("排序以後的數:\n");

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

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

printf("\n");

system("pause");

return 0;

}如果要從大到小排,只要把上面的交換條件

if(a[j]>a[j+1])換為

if(a[j]

C語言程式設計 任意輸入N個數,將它們由大到小排序輸出

include definen10 n為輸入的數字個數 main for i 0 i printf d a i getch 圖丁丁的回答是錯的,沒有實現任意輸入n個數的要求。include include int max 0 struct listnode typedef struct listno...

C語言題目傳統流程圖求解依次將數輸入,要求輸出其中最大

include int main return 0 include using namespace std int main 將第乙個輸入的數字賦給乙個變數,比如是x,那麼將後續輸入的數跟x比較,將大的數再賦給x,等輸入完後,最大的數就是x了。c語言小題,用傳統流程圖表示 依次將10個數輸入,要求輸...

古人四兄弟從大到小排序依次為,古代四兄弟排行次序稱謂從大到小依次是?

古代以伯 仲 叔 季表示兄弟間的排行順序,伯為老大,仲為老二,叔為老 三 季排最小。古人字前常加排行次序,如 伯禽 仲尼 叔向 季路 等。因此,父之兄稱 伯父 父之次弟稱 仲父 仲父之弟稱 叔父 最小的叔父稱 季父 後來你之弟統稱 叔父 史記 項羽本紀 其 項羽 季父梁。這裡的 季父 泛指叔父,而季...