输入3个字符串,按从小到大的顺序输出

来源:百度知道 编辑:UC知道 时间:2024/05/22 04:02:34
输入3个字符串,按从小到大的顺序输出
原题就这样的,没有更具体了.
好复杂,能不能简单点.

这里给出一个从文件里读的例子吧,个人感觉吧,从键盘也一样的。只不过我懒的从键盘输入,呵呵。
程序执行没有问题。
楼主运行程序的时候可以在程序相应的目录下建立一个“abc.txt”的文件形式如下:
abCCCC
aKJHJHG
adasdasdasd
每一行存储一个字符串。
如果不愿意呢,也可以定义char*的数组,从键盘读入了,那个不难的。
%s,&a[i],可以搞定
程序代码如下:
#include<iostream>
#include<fstream>
#include<sstream>
#include<algorithm>
#include<vector>

using namespace std;

bool scmp(string a, string b);

void main()
{
ifstream in("abc.txt");
vector<string> sgroup;
for(string s;getline(in, s);)
sgroup.push_back(s);
sort(sgroup.begin(),sgroup.end(),scmp);
for(int i = 0;i<sgroup.size();i++)
cout<<sgroup[i]<<endl;
}

bool scmp(string a,string b)
{
char ju = 'a';//字符串短的
int min = a.size();

if(min>b.size())
{
min = b.size();
ju = 'b';
}
for(int i=0,