c++输入三个人名,按字母顺序对其进行排序,然后输出。要求使用C++的string类型可以包含空格
答案:2 悬赏:60 手机版
解决时间 2021-02-22 05:02
- 提问者网友:我是女神我骄傲
- 2021-02-21 21:04
c++输入三个人名,按字母顺序对其进行排序,然后输出。要求使用C++的string类型可以包含空格求大神啊,明天老师抽人讲题
最佳答案
- 五星知识达人网友:往事埋风中
- 2021-02-21 21:34
给你提供了一个remove_space(string& str)函数,把要去掉空格的串str传入函数即可,函数返回后,str中的内容即被前后去除了多余的空格。 不明白的地方可以hi我
#include<string>
using namespace std;
void remove_space(string& str){
string buff(str);
char space = ' ';
str.assign(buff.begin() + buff.find_first_not_of(space),
buff.begin() + buff.find_last_not_of(space) + 1);
}
测试:
(1)前后有若干个空格的情况,输入" abc ",输出:"abc"
(2)前后有若干空格,且字符串中间也夹杂着若干空格的情况,输入" a b cd ", 输出:"a b cd"
相信这就是你要的
#include<string>
using namespace std;
void remove_space(string& str){
string buff(str);
char space = ' ';
str.assign(buff.begin() + buff.find_first_not_of(space),
buff.begin() + buff.find_last_not_of(space) + 1);
}
测试:
(1)前后有若干个空格的情况,输入" abc ",输出:"abc"
(2)前后有若干空格,且字符串中间也夹杂着若干空格的情况,输入" a b cd ", 输出:"a b cd"
相信这就是你要的
全部回答
- 1楼网友:你可爱的野爹
- 2021-02-21 23:11
//#include "stdafx.h"//If the vc++6.0, with this line.
#include <string>
#include <iostream>
using namespace std;
int main(int argc,char *argv[]){
string s1,s2,s3,t;
char ch;
cout << "Please enter 3 names...\n";
while((ch=cin.get())!='\n')
s1+=ch;
while((ch=cin.get())!='\n')
s2+=ch;
while((ch=cin.get())!='\n')
s3+=ch;
if(s1>s2)
t=s1,s1=s2,s2=t;
if(s1>s3)
t=s1,s1=s3,s3=t;
if(s2>s3)
t=s2,s2=s3,s3=t;
cout << s1 << '\n' << s2 << '\n' << s3 << endl;
return 0;
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯