编写C++风格程序,从键盘上输入5个字符串,要求将它们按由小到大的顺序排列,用string方法。谢谢啦

如题所述

#include <iostream>
#include <string>
using namespace std; //以上为引用头文件
int main() //主函数
{
int i; //创建变量i
string str[5]; //定义数组str
void sort(string s[]); //定义函数sort
cout<<"Please input string:"<<endl; //输出Please input string:
for(i=0;i<=5;i++)
cin>>str[i]; //输入5个字符串
sort(str); //调用str函数
cout<<"The sorted string is:"<<endl; //输出The sorted string is
for(i=0;i<5;i++)
cout<<str[i]<<" "; //输出已排列好的字符串
cout<<endl;
return 0;
}

void sort(string s[])
{
int i,j;
string temp;
for(i=0;i<4;i++)
for(j=0;j<4-i;j++)
if(s[j]>s[j+1]) //对每个进行比较
{
temp=s[j];
s[j]=s[j+1];//把小的数放在前面
s[j+1]=temp;
}
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2016-06-08
#include <iostream>
#include <string>
using namespace std; //以上为引用头文件
int main() //主函数
{
int i;
string str[5];
void sort(string s[]);
cout<<"Please input string:"<<endl;
for(i=0;i<=5;i++)
cin>>str[i]; sort(str); cout<<"The sorted string is:"<<endl;
for(i=0;i<5;i++)
cout<<str[i]<<" "; cout<<endl;
return 0;
}
void sort(string s[])
{
int i,j;
string temp;
for(i=0;i<4;i++)
for(j=0;j<4-i;j++)
if(s[j]>s[j+1]) //对每个进行比较
{
temp=s[j];
s[j]=s[j+1];//把小的数放在前面
s[j+1]=temp;
}
}
是对的本回答被提问者采纳
相似回答