暑假字符串专题HBU程序设计训练营总结

?点这里

7-4 字符串排序

本题要求编写程序,读入5个字符串,按由小到大的顺序输出。

输入格式:

输入为由空格分隔的5个非空字符串,每个字符串不包括空格、制表符、换行符等空白字符,长度小于80。

输出格式:

按照以下格式输出排序后的结果:

After sorted:
每行一个字符串

输入样例:

red yellow blue green white

输出样例:

After sorted:
blue
green
red
white
yellow

也不知道咋了,直接排呗?还能咋地? 

还是有些小技巧滴:

1.空格间隔,直接用cin输入就行,用个while(cin>>s){}一直循环读下去,岂不是美滋滋

2.排序c++可以直接比较,那就if(s[a]>s[a+1]){}比较就完事了

 

#include<iostream>
using namespace std;
int main(){
	string s[5];
	for(int i=0;i<5;i++){
		cin>>s[i];
	}
	for(int i=0;i<5;i++){
		for(int a=0;a<4;a++){
			if(s[a]>s[a+1]){
				string t=s[a];
				s[a]=s[a+1];
				s[a+1]=t;
			}
		}
	}
	cout<<"After sorted:"<<endl;
	for(int i=0;i<5;i++){
		cout<<s[i]<<endl;
	}
	return 0;
}