本文主要是介绍编写程序:输入三个整数,然后按由大到小的顺序输出这三个数。,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
方法一(直接交换)
#include<stdio.h>
int main()
{int a,b,c;scanf("%d%d%d",&a,&b,&c); //可以这么写 想办法把a换成最大的数 ,之后是b cint temp;if(a<b){temp=a;a=b;b=temp;} if(a<c){temp=a;a=c;c=temp;}if(b<c){temp=b;b=c;c=temp;}printf("排序后的三个数为:%d %d %d\n",a,b,c);return 0;
}
方法二(冒泡排序思想)
#include<stdio.h>
int main()
{int a[3];for(int i=0;i<3;i++){scanf("%d",&a[i]);}for(int i=0;i<3-1;i++){for(int j=0;j<3-i-1;j++){if(a[j]<a[j+1]){int temp=a[j];a[j]=a[j+1];a[j+1]=temp;}}}printf("排序后的三个数为:");for(int i=0;i<3;i++) printf("%d ",a[i]);return 0;
}
延伸到对n个数排序
这里还是使用冒泡排序的思想
#include<stdio.h>
int main()
{int n,a[1005];scanf("%d",&n);for(int i=0;i<n;i++){scanf("%d",&a[i]);}for(int i=0;i<n-1;i++){for(int j=0;j<n-i-1;j++){if(a[j]<a[j+1]){int temp=a[j];a[j]=a[j+1];a[j+1]=temp;}}}printf("排序后的%d个数为:",n);for(int i=0;i<n;i++) printf("%d ",a[i]);return 0;
}
这篇关于编写程序:输入三个整数,然后按由大到小的顺序输出这三个数。的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!