首先,需要強調一點,排序的方式有很多種,而我寫的這一種應該是最容易理解的,比較適合初學者來看,但是實現排序相對占用
空間比較多,不是一種很好的排序方式。
這種方式使用的是一維陣列的方式,首先是將申請的空間初始化,然後將輸入的數分別放到對應序號的一維陣列中,利用一維陣列
來計數,然後利用一維陣列的將數列印出來。
比如:隨機選擇0到9範圍內的5個數,從小到大排序,輸入1、6、3、5、3,會輸出1、3、3、5、6
#include
#include
int main()
for(i=0;i<5;i++)
for(i=0;i<10;i++) /*如果需要逆序只需要改為for(i=9;i>=0;i--)即可*/
//列印輸出}}
結果如圖:
如果想要逆序輸出又如何呢?
只需修改乙個for迴圈即可,如**中標記修改。
但是如果想要更加複雜一點數的排序呢?
例如:0到1000之間n個數的排序,如何實現呢?(注意:0到1000有1001個數,在定義的時候需要注意)
**如下:
#include
#include
int main()
printf("請輸入排序數字的個數:\n");
scanf("%d",&n);
printf("請輸入需要排序的數字:\n");
for(i=0;i
printf("排序結果為:\n");
for(i=0;i<=1000;i++)}}
乙個簡單的C語言遞迴隨機快排
為了應付考試,我正在啃胡凡大神的 演算法筆記 其中第四章入門篇 2 中有乙個生動的遞迴隨機快排講解,但是沒有全部的 只有核心部分。所以我就結合書上的部分把整個的 寫出來。也算對自己學習過程的乙個記錄吧。狗尾續貂,不成敬意。include include include include include...
C C 程式設計 用C語言簡單實現乙個可變陣列
我們知道,c語言的陣列是固定大小的,儘管可以用乙個變數來定義陣列大小,但是一旦定義了,在大小在執行過程中無法改變。如果一開始就定義乙個容量較大的陣列,那麼由於不知道實際要存放多少元素,可能會造成空間浪費或者還是不夠用。所以,本篇部落格,我們就用c語言實現乙個可以變大小的陣列。ifndef array...
用C語言實現乙個簡單的Linux殼層(Shell)
期末考試考完,進入聖誕假期,終於騰出手寫這篇文章了。這是我們os課的第乙份作業,要求實現乙個簡單的linux shell,用c寫出乙個類似terminal的東西。大致要求 可以迴圈接收command,根據內容實現相應動作,實現幾個常見command即可。作業目的是熟悉幾個知識點 linux的pare...