用C語言編寫通過if將3個數(shù)排序:
創(chuàng)新互聯(lián)公司從2013年成立,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項目成都網(wǎng)站制作、網(wǎng)站建設(shè)、外貿(mào)網(wǎng)站建設(shè)網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元連山做網(wǎng)站,已為上家服務(wù),為連山各地企業(yè)和個人服務(wù),聯(lián)系電話:18980820575
#includestdio.h/*函數(shù)頭:輸入輸出頭文件*/
void main()/*空類型:主函數(shù)*/
{
inta,b,c,t;/*定義變量的數(shù)據(jù)類型為整型*/
printf("輸入3個數(shù),中間用空格隔開:");/*輸出文字提示*/
scanf("%d%d%d",a,b,c);/*輸入3個數(shù)字*/
if(ab)/*判斷a是否小于b*/
{t=a;a=b;b=t;}/*是,則a、b的值互換*/
if(ac)/*判斷a是否小于c*/
{t=a;a=c;c=t;}/*是,則a、c的值互換*/
if(bc)/*判斷b是否小于c*/
{t=b;b=c;c=t;}/*是,則b、c的值互換*/
printf("從小到大:%d,%d,%d\n",c,b,a);/*輸出從小到大排列的數(shù)*/
printf("從大到?。?d,%d,%d\n",a,b,c);/*輸出從大到小排列的數(shù)*/
}
擴展資料
輸入三個數(shù),比較其大小,并從大到小輸出。
#includestdio.h
int main(){
inta,b,c;
scanf("%d%d%d",a,b,c);
if(ab){
intflag=a;
a=b;
b=flag;
}
if(ac){
intflag=a;
a=c;
c=flag;
}
if(bc){
intflag=b;
b=c;
c=flag;
}
printf("%d%d%d",a,b,c);
}
原理就是運用冒泡算法,把最大的數(shù)浮在最上面,而小的數(shù)就下沉,最后就輸出。
方法如下:
分析:我們想辦法把最小的數(shù)放到x上,先將x與y進行比較,如果xy則將x與y的值進行交換,
然后再用x與z進行比較,如果xz則將x與z的值進行交換,這樣能使x最小。
1.從控制臺讀入三個數(shù);
2.實現(xiàn)三個數(shù)從小到大排序:
(1)將第一個數(shù)作為最小數(shù),依次和第二,三個數(shù)進行比較。兩次比較重如果有任意一個比第一個小,則將兩個數(shù)交換
;
(2)在(1)步后,得到第一個數(shù)為最小數(shù)。再將第二個數(shù)與第三個數(shù)比較大小后即可實現(xiàn)三個數(shù)從小到大排序。
拓展資料
兩種常用排序方法:
1.選擇排序法:從一列數(shù)中,選擇第一個作為最小數(shù),依次和后面的數(shù)進行比較。如有比第一個數(shù)小的數(shù),則交換兩個數(shù)。最后排到該列數(shù)都倒數(shù)第二個時,這列數(shù)就從小到大排好了順序。
2.冒泡排序法:思路與選擇排序法一致。不同的是,冒泡排序?qū)⒌谝粋€作為最大數(shù),然后再和該數(shù)后的數(shù)進行比較。
一:全局變量
#include?stdio.h
int?a,b,c;??//定義三個全局變量
void?sort()??//不需要參數(shù)
{
int?t;
if(ab)
{
t=a;a=b;b=t;
}
if(bc)
{
t=b;b=c;c=t;
}
if(ab)
{
t=a;a=b;b=t;
}
}
int?main()
{
printf("輸入:");
scanf("%d%d%d",a,b,c);
sort();
printf("排序:%d??%d??%d\n",a,b,c);
return?0;
}
二:指針
#include?stdio.h
void?sort(int?*a,?int?*b,?int?*c)?//參數(shù)傳遞方式:地址傳遞
{?
int?t;
if(*a*b)?
{
t=*a;*a=*b;*b=t;
}
if(*b*c)
{
t=*b;*b=*c;*c=t;
}
if(*a*b)?
{
t=*a;*a=*b;*b=t;
}
}
int?main()
{
int?a,b,c;
printf("輸入:");
scanf("%d%d%d",a,b,c);
sort(a,b,c);???????????????//把地址作為參數(shù)
printf("排序:%d??%d??%d\n",a,b,c);
return?0;
}