c語(yǔ)言10個(gè)數(shù)從小到大排序 c語(yǔ)言:用交換排序法對(duì)10個(gè)數(shù)據(jù)進(jìn)行排序從小到大怎么做?。?/h1>
c語(yǔ)言:用交換排序法對(duì)10個(gè)數(shù)據(jù)進(jìn)行排序從小到大怎么做?。窟@個(gè)問(wèn)題屬于一種套路公式思路如下:先弄個(gè)循環(huán)體,次數(shù)為5循環(huán)體里面,將相鄰的兩個(gè)數(shù)做比較,比較出較小的數(shù),再和相鄰的數(shù)做比較,直至完成為止。大
c語(yǔ)言:用交換排序法對(duì)10個(gè)數(shù)據(jù)進(jìn)行排序從小到大怎么做?。?/h2>
這個(gè)問(wèn)題屬于一種套路公式
思路如下:
先弄個(gè)循環(huán)體,次數(shù)為5
循環(huán)體里面,將相鄰的兩個(gè)數(shù)做比較,比較出較小的數(shù),再和相鄰的數(shù)做比較,直至完成為止。
大體思路就是這樣了。
C語(yǔ)言中怎么把三個(gè)整數(shù)從小到大排列?
方法如下:
1.從控制臺(tái)讀入三個(gè)數(shù);
2.實(shí)現(xiàn)三個(gè)數(shù)從小到大排序:
(1)將第一個(gè)數(shù)作為最小數(shù),依次和第二,三個(gè)數(shù)進(jìn)行比較。兩次比較重如果有任意一個(gè)比第一個(gè)小,則將兩個(gè)數(shù)交換 ;
(2)在(1)步后,得到第一個(gè)數(shù)為最小數(shù)。再將第二個(gè)數(shù)與第三個(gè)數(shù)比較大小后即可實(shí)現(xiàn)三個(gè)數(shù)從小到大排序。
兩種常用排序方法:
1.選擇排序法:從一列數(shù)中,選擇第一個(gè)作為最小數(shù),依次和后面的數(shù)進(jìn)行比較。如有比第一個(gè)數(shù)小的數(shù),則交換兩個(gè)數(shù)。最后排到該列數(shù)都倒數(shù)第二個(gè)時(shí),這列數(shù)就從小到大排好了順序。
2.冒泡排序法:思路與選擇排序法一致。不同的是,冒泡排序?qū)⒌谝粋€(gè)作為最大數(shù),然后再和該數(shù)后的數(shù)進(jìn)行比較。
在c語(yǔ)言編程中如何將1-10的數(shù)從小到大排列?
對(duì)于少數(shù)的數(shù)字的排列,可以通過(guò)簡(jiǎn)單的if嵌套語(yǔ)句便可將所有情況列舉出來(lái);但是一旦要比較的數(shù)字較多,這種方法便缺少了可執(zhí)行性;因此,我們可以采用數(shù)組的思想來(lái)進(jìn)行編程;此處以:將10個(gè)數(shù)按從小到大排列輸出 舉例:#include"stdio.h"#define N 10int main (){ int a[N] int i,j,t printf("Please input %d numbers:n",N) for(i<0i<Ni ) { scanf("%d",&a[i]) } for(i=1i<=N-1i ) { for(j=0j<N-ij ) { if(a[j]>a[j 1]) { t=a[j]a[j]=a[j 1]a[j 1]=t } } } printf("The resortrd numbers is :n") for(i=0i<Ni ) { printf("%-4d",a[i]) }}附:程序開(kāi)頭采用了定義一個(gè)宏常量的方法,可以通過(guò)改變?cè)摮A縼?lái)對(duì)程序進(jìn)行整體的改變;增加了程序的靈活性,方便對(duì)源程序進(jìn)行修改;如果要按從大到小的排列方式進(jìn)行排列,僅僅需要更改程序中的一處,此處便不再詳細(xì)說(shuō)明,自己探討^_^