排序(sort使用)

问题描述

  编写一个程序,输入3个整数,然后程序将对这三个整数按照从大到小进行排列。
  输入格式:输入只有一行,即三个整数,中间用空格隔开。
  输出格式:输出只有一行,即排序后的结果。
  输入输出样例

样例输入

9 2 30

样例输出

30 9 2

主要思想:本题十分简单,但是我对于sort用法不够熟练,在这里根据这个简单题目的代码小做总结。

sort默认的排序方式是对所给数组进行从小到大的排序,若该数组不是直接比较对象,比如要比较的是结构体数组的成员,又或者需要以从大到小的方式进行比较,则需要重新写compare函数。

#include<stdio.h>//排序 
#include<algorithm>
using namespace std;
int a[4];
bool compare(int b1,int b2){//comepare函数,返回类型为bool型 
	return b1>b2;//从大到小的顺序 
}
int main(){
	for(int i=0;i<3;i++)
		scanf("%d",&a[i]);
	sort(a,a+3,compare);//sort的基本结构 
	for(int i=0;i<2;i++)
		printf("%d ",a[i]);
	printf("%d\n",a[2]);
	return 0;
} 

猜你喜欢

转载自blog.csdn.net/DEAR_CXN/article/details/87969599