在C語言中編寫程式實現從小到大排序

2021-08-10 04:09:58 字數 6105 閱讀 9865

1樓:天雨下凡

#include

int main(void)

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

for(j=i+1;j<9;j++)

{if(num[j]

2樓:阿爾邁凡

#include

#include

int cmp(const void *a,const void *b)

int main(int argc,char **argv)

;int i;

qsort(a,sizeof(a)/sizeof(int),sizeof(int),cmp);

for(i=0;i < sizeof(a)/sizeof(int);++i)

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

printf("\n");

return 0;

}如果要自己實現排序函式的話

#include

void qsort(int *a,int left,int right)

//從右邊開始將小於主元的數放在左邊

while((j >= p) && (a[j] >= k))

--j;

if(j > p)

}a[p]=k;

//如果左邊的數大於1個則遞迴左邊

if(p-left > 1)

qsort(a,left,p-1);

//如果右邊的數大於1個則遞迴右邊

if(right-p > 1)

qsort(a,p+1,right);

}int main(int argc,char **argv)

;int i;

qsort(a,0,sizeof(a)/sizeof(int)-1);

for(i=0;i < sizeof(a)/sizeof(int);++i)

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

printf("\n");

return 0;}

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

3樓:知道小爺

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

【一】冒泡法

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

如果有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;}

4樓:匿名使用者

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

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

5樓:沒有水印的鈔票

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

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

int main()

bubble(arr,10);

return 0;}

6樓:莫雲凌珏

#include

main()

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

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

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

編寫c語言程式,把一個陣列按從小到大的次序排列起來

7樓:一個青年

源程式以及演算法註釋如下:

#define _crt_secure_no_warnings//vs編譯環境需要進行巨集定義,vc6.0可忽略

#include//輸入輸出標頭檔案

int main()

for (n = 0; n <= 8; n++)//要進行(10-1)組比較

for (j = 0; j <= 8 - n; j++)//每組進行(10減第幾組)次比較

if (new_number[j] < new_number[j + 1])//比較大小並將大的賦給前面的陣列

}printf("min-->max:\n");//文字提示

for (m = 0; m <= 9; m++)//依次從小到大輸出

printf("%d ", number[m]);//輸出元素

printf("\n");

printf("max-->min:\n");//文字提示

for (m = 0; m <= 9; m++)//依次從大到小輸出

printf("%d ", new_number[m]);//輸出元素

printf("\n");

return 0;

}程式執行結果如下:

擴充套件資料:

其他簡單實現程式:

#include

int main()

;int i,j,temp;

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

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

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

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

return 0;}

8樓:4747哦

選擇法#include

main()

;int i,j,temp;

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

for(j=i+1;j<8;j++)

if(a[i]大

於號從高到低排序

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

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

}起泡法

#include "stdio.h"

main()

}p=a;

printf("最小%d 最大%d\n",*p,*(p+9));

for(p=a;p-a<10;p++) //輸出排序後的10個數printf("%d ",*p);

}#include "stdio.h"

main()

void fun(int *p)

printf("最小%d 二大%d\n",*p,*(p+8));

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

printf("%d ",*p++); //移動指標p}#include

void sort(int *a,int n)}main()

9樓:織毛衣的手手

#include

int* bubblesort(int* ary, int length)}}

return ary;}

10樓:悠悠缺刻鬧

簡單,留郵箱我寫一個發你參考

以下是一個c語言程式,該程式實現從鍵盤輸入10個整數存放到陣列中,然後進行從小到大的排序,最後輸出該數

11樓:

#include "stdio.h"

int main(void)

arr[i] = arr[k];

arr[k] = temp;

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

printf("%-5d",arr[i]);

getch();

return 0;

}我測試過了du。

zhi。。。希望對dao有幫回助。。。。使答用的是選擇排序法。。。

12樓:匿名使用者

#include

void main()

//氣泡排序

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

printf("%d ",ar[i]);//輸出循版環}利用冒泡法排序。權

13樓:匿名使用者

正向輸出;

main ()

14樓:li無涯

#include

int main()

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

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

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

printf("\n");

return 0;}

c語言程式設計: 從使用者輸入10個整數,對其按照從小到大的順序排序,並輸出結果。

15樓:凌亂心扉

//要求任意輸入10個數,然後按從小到大順序輸出#include

int main()

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

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

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

printf("\n");

return 0;}

16樓:匿名使用者

要求任意輸入10個數,然後按從小到大順序輸出#include

int main()

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

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

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

printf("\n");

return 0;}

17樓:匿名使用者

#include

int main(void)

for(i = 0;i < 10;i++)}c = arr[i];

arr[i] = min;

arr[mini] = c;

}for(i = 0;i < 10;i++)}望採納。

18樓:千年菡

#include

int main(void)

//輸入·十個數

for (j = 1; j <= 9; j++) // 冒泡法排序}}

printf("從小到大排\n");

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

19樓:匿名使用者

先定義一個陣列存這十個數,要看你用什麼演算法了,根據不同演算法進行篩選

20樓:匿名使用者

#include<stdio.h>

int main()bai

c語言程式:題目:從鍵盤輸入一個字串,按照字元順序從小到大進行排序,並要求刪除重複的字元。答案如下

21樓:匿名使用者

#include

#include"string.h"

int main(void)

,str2[256]=;//定義二個陣列,並賦初值為0int i;

gets(str1);//讀取一個字串

for(i=0;str1[i];i++)

for(i=0;i!=256;i++)

if(str2[i]==1)//判斷陣列中被str1填充的位置,填充的是非0值,沒填充的是0值

printf("%c",i);//輸出str2的下標值,對應str1中的字元值

putchar('\n');

return 0;}

使用c語言編寫程式,實現計算1 2 3 4

寫主要 int sum 0 for int i 1 i 27 i 3 printf d sum c語言編寫程式計算1 2 3 4 5 6 7 8 9 10 11 12 61 62 63 64的值 include stdafx.h vc 6.0加上這一行.include stdio.h void ma...

C語言 數從小到大輸出,C語言 3個數從小到大輸出

額 如果a b那麼 a b 換位 也就是 大的變成小的 但是如果說a b 那麼 小的還是小的 大的還是大的 同理 下面的都是這意思 結果就是 小的一定會被變成最前面的 大的一定會到最後面 其原理就是 如果a比b c都要小那麼a還是a 如果a比b c 中任何一個大 就比如是c 那麼 a c 會換位 又...

c語言編寫程式用氣泡排序實現升序排列

1 首先開啟一個空白的c語言檔案,首先先定義一組待排序的數列以及各個變數,接著就是用來處理排序的邏輯 2 氣泡排序的邏輯是一組數從第一個數值開始,如果相鄰兩個數的排列順序與期望不同,則將兩個數的位置進行交換,重複這樣的過程直到最後一個數不需要交換則排序完成,如果有n個數需要排序,則需要進行 n 1 ...