cpp_python
2016-09-12 01:33
采纳率: 66.7%
浏览 810
已采纳

请问这段C++中连接字符串的程序哪出了问题?

#include
#include

using std::cin;
using std::cout;
using std::endl;
using std::string;

int main()
{
string s, sum;
cout << "请输入多个字符串:" << endl;
while (cin >> s)
{

   sum += s;

}
cout << "字符串连接起来的大字符串是:" << sum << endl;
system("pause");
return 0;

}

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • SureGOGOGO 2016-09-12 01:49
    已采纳

    #include
    #include
    using namespace std;
    int main()
    {
    string s, sum;
    cout << "请输入多个字符串:" << endl;
    while (cin >> s)
    {
    if(s=="#") break;
    sum += s;

    }
    cout << "字符串连接起来的大字符串是:" << sum << endl;
    system("pause");
    return 0;
    }

    点赞 打赏 评论
  • guwei4037 2016-09-12 01:51

    没有退出条件,所以永远在执行while循环里的内容,不会有输出。

     #include "stdafx.h"
    #include <iostream>
    #include <string>
    
    using std::cin;
    using std::cout;
    using std::endl;
    using std::string;
    
    
    int _tmain(int argc, _TCHAR* argv[])
    {
        string s, sum;
        cout << "请输入多个字符串(按q键退出):" << endl;
        while (cin >> s)
        {
            if(s=="q")
            {
                break;
            }
           sum += s;
    
        }
        cout << "字符串连接起来的大字符串是:" << sum << endl;
        system("pause");
        return 0;
    }
    
    点赞 打赏 评论
  • Joe-Peng_hitsz 2016-09-12 02:32

    正如楼上所说,while循环成了死循环,没有终止条件。

    点赞 打赏 评论

相关推荐 更多相似问题