c語言函數(shù)十個(gè)數(shù)排序 c語言給十個(gè)數(shù)排序

C語言編程題:用選擇法對(duì)10個(gè)整數(shù)排序

#includelt;stdio.hgt;

為企業(yè)提供網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作、網(wǎng)站優(yōu)化、成都營銷網(wǎng)站建設(shè)、競(jìng)價(jià)托管、品牌運(yùn)營等營銷獲客服務(wù)。成都創(chuàng)新互聯(lián)擁有網(wǎng)絡(luò)營銷運(yùn)營團(tuán)隊(duì),以豐富的互聯(lián)網(wǎng)營銷經(jīng)驗(yàn)助力企業(yè)精準(zhǔn)獲客,真正落地解決中小企業(yè)營銷獲客難題,做到“讓獲客更簡單”。自創(chuàng)立至今,成功用技術(shù)實(shí)力解決了企業(yè)“網(wǎng)站建設(shè)、網(wǎng)絡(luò)品牌塑造、網(wǎng)絡(luò)營銷”三大難題,同時(shí)降低了營銷成本,提高了有效客戶轉(zhuǎn)化率,獲得了眾多企業(yè)客戶的高度認(rèn)可!

int main()

{

int i,j,min,t,a[10]={2,4,8,3,6,9,7,222,64,88};

printf("排序前的序列為:\n");

for(i=0;ilt;10;i++)//輸出排序前的序列

{

printf("%5d",alt;igt;);

}

printf("\n");

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

{

min=i;//把每次循環(huán)的第一個(gè)數(shù)作為最小值

for(j=i+1;jlt;10;j++)

{

if(a[min]gt;a[j])

min=j;//交換

}

if(min!=i)//說明第一個(gè)數(shù)不是最小數(shù),所以將a[i+1]~a[10]中最小值與alt;igt;對(duì)換

{

t=a[min];

a[min]=alt;igt;;

alt;igt;=t;

}

}

printf("排序后的序列為:\n");

for(i=0;ilt;10;i++)//輸出排序后的序列

printf("%5d",alt;igt;);

printf("\n");

return 0;

}

擴(kuò)展資料:

return表示把程序流程從被調(diào)函數(shù)轉(zhuǎn)向主調(diào)函數(shù)并把表達(dá)式的值帶回主調(diào)函數(shù),實(shí)現(xiàn)函數(shù)值的返回,返回時(shí)可附帶一個(gè)返回值,由return后面的參數(shù)指定。

return通常是必要的,因?yàn)楹瘮?shù)調(diào)用的時(shí)候計(jì)算結(jié)果通常是通過返回值帶出的。如果函數(shù)執(zhí)行不需要返回計(jì)算結(jié)果,也經(jīng)常需要返回一個(gè)狀態(tài)碼來表示函數(shù)執(zhí)行的順利與否(-1和0就是最常用的狀態(tài)碼),主調(diào)函數(shù)可以通過返回值判斷被調(diào)函數(shù)的執(zhí)行情況。

c語言中,用一維數(shù)組排序十個(gè)整數(shù),怎么做

#includelt;stdio.hgt;

int main()

{

int i,j,min,t,a[10]={2,4,8,3,6,9,7,222,64,88};

printf("排序前的序列為:\n");

for(i=0;ilt;10;i++)//輸出排序前的序列

{

printf("%5d",alt;igt;);

}

printf("\n");

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

{

min=i;//把每次循環(huán)的第一個(gè)數(shù)作為最小值

for(j=i+1;jlt;10;j++)

{

if(a[min]gt;a[j])

min=j;//交換

}

if(min!=i)//說明第一個(gè)數(shù)不是最小數(shù),所以將a[i+1]~a[10]中最小值與alt;igt;對(duì)換

{

t=a[min];

a[min]=alt;igt;;

alt;igt;=t;

}

}

printf("排序后的序列為:\n");

for(i=0;ilt;10;i++)//輸出排序后的序列

printf("%5d",alt;igt;);

printf("\n");

return 0;

}

擴(kuò)展資料:

include用法:

#include命令預(yù)處理命令的一種,預(yù)處理命令可以將別的源代碼內(nèi)容插入到所指定的位置;可以標(biāo)識(shí)出只有在特定條件下才會(huì)被編譯的某一段程序代碼;可以定義類似標(biāo)識(shí)符功能的宏,在編譯時(shí),預(yù)處理器會(huì)用別的文本取代該宏。

插入頭文件的內(nèi)容

#include命令告訴預(yù)處理器將指定頭文件的內(nèi)容插入到預(yù)處理器命令的相應(yīng)位置。有兩種方式可以指定插入頭文件:

1、#includelt;文件名gt;

2、#include"文件名"

C語言:輸入10個(gè)數(shù)依次從大到小排序!

用數(shù)組來存放十個(gè)數(shù)字,使用“冒泡排序”來實(shí)現(xiàn)排序。10個(gè)數(shù)字需進(jìn)行9輪掃描,每次掃描時(shí)比較相鄰的二個(gè)數(shù),如它們不符合要求的大小關(guān)系,就交換它們的位置。第一輪掃描結(jié)束時(shí),最大的數(shù)就“沉”到最后。于是第二的范圍就少了一個(gè)數(shù)。再進(jìn)行第二兩棲型、第三輪,…——直到第9輪就完成了。最后輸出結(jié)果。

#includestdio.h

int

main()

{

int

a[10],i,j,t;

printf("請(qǐng)輸入10個(gè)整數(shù):\n");

for(i=0;i10;i++)

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

for(i=0;i9;i++)

for(j=0;j9-i;j++)

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

{

t=a[j];

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

a[j+1]=t;

}

printf("排序以后的數(shù):\n");

for(i=0;i10;i++)

printf("%d

",a[i]);

printf("\n");

system("pause");

return

0;

}

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

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

if(a[j]a[j+1])就可以了。

用C語言編程:用選擇法對(duì)10個(gè)整數(shù)排序,10個(gè)整數(shù)用scanf函數(shù)輸入

1、打開visual C++ 6.0,準(zhǔn)備一個(gè)空白的c語言文件,引入頭文件,在main函數(shù)中定義變量和數(shù)組:

2、接下來用scanf函數(shù)輸入的10個(gè)數(shù),將輸入的數(shù)存入到變量a中,接著進(jìn)行比較排序,如果后一個(gè)數(shù)比前一個(gè)數(shù)大則利用中間變量t實(shí)現(xiàn)倆值互換,最后輸出排序的結(jié)果:

3、編譯運(yùn)行程序,輸入任意的10個(gè)數(shù),回車后即可看到排序后的結(jié)果。以上就是c語言中選擇排序的用法:

C語言如何輸入十個(gè)數(shù),按從大到小順序排列!

用選擇排序法編寫c語言,實(shí)現(xiàn)從鍵盤上輸入10個(gè)數(shù),按從大到小的順序排序輸出。代碼如下:

#includestdio.h

int main()

{

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

printf("輸入數(shù)");

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;

}

擴(kuò)展資料:

代碼還可以設(shè)計(jì),如下:

#includestdio.h

int main()

{

int a[10],i,j,t;//定義數(shù)組;

for(i=0;i10;i++){

scanf("%d",a[i]);//給數(shù)組賦值;

}

for(i=0;i9;i++)//10個(gè)數(shù),進(jìn)行9輪比較;

for(j=0;j10-i;j++){//第一個(gè)數(shù)比較9次,依次遞減;

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

t=a[j];

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

a[j+1]=t;

}

}

for(i=0;i10;i++){

printf("%d\n",a[i]);//輸出數(shù)組的值;

}

return 0;

}

}

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

for(i=0;i10;i++)

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

printf("\n");

}

參考資料:百度百科-printf

c語言,用選擇法對(duì)10個(gè)數(shù)排序,按正負(fù)數(shù)分開輸出?

選擇排序:大循環(huán)i依次取元素和后面所有元素比較,找出其中最值,和當(dāng)前i的元素交換。一次大循環(huán)交換一次。

程序思路:

一、排序函數(shù):根據(jù)傳參,實(shí)現(xiàn)降序升序兩種功能。

二、數(shù)組輸出:根據(jù)傳參,實(shí)現(xiàn)正數(shù)和負(fù)數(shù)輸出兩種功能。

下面是代碼:

#include stdio.h

void px(int nums[],int len,int t);//排序

void showNums(int nums[],int len,int t);//輸出

int main()

{

int nums[10]={8,7,-1,2,-5,4,9,-3,-6,1};

printf("原數(shù)組:8,7,-1,2,-5,4,9,-3,-6,1\n");

printf("升序排列后:\n");

px(nums,10,1);

printf("|---正數(shù)為:");

showNums(nums,10,1);

printf("|---負(fù)數(shù)為:");

showNums(nums,10,0);

//--------------------------------

printf("降序排列后:\n");

px(nums,10,0);

printf("|---正數(shù)為:");

showNums(nums,10,1);

printf("|---負(fù)數(shù)為:");

showNums(nums,10,0);

}

void showNums(int nums[],int len,int t)//t=1輸出正數(shù),t=0輸出負(fù)數(shù)

{

int i;

for(i=0;ilen;i++)

? if((t nums[i]0)||(!t nums[i]0))

? ? ? printf("%d ",nums[i]);

printf("\n");

}

void px(int nums[],int len,int t)//t=1升序,t=0降序

{

int i,j,k,m;

for(i=0;ilen-1;i++)

{

? m=nums[i],k=i;

? for(j=i+1;jlen;j++)

? ? ? if((t mnums[j])||(!t mnums[j])) m=nums[j],k=j;

? m=nums[i],nums[i]=nums[k],nums[k]=m;

}

}

網(wǎng)站名稱:c語言函數(shù)十個(gè)數(shù)排序 c語言給十個(gè)數(shù)排序
地址分享:http://muchs.cn/article4/hjceoe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計(jì)公司全網(wǎng)營銷推廣、動(dòng)態(tài)網(wǎng)站服務(wù)器托管、網(wǎng)站維護(hù)、微信公眾號(hào)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運(yùn)營