Chris_kxt
2018-10-10 23:48
采纳率: 71.4%
浏览 968

C++语言编程 结合两个字符串

写一个结合两个字符串的方法,从第一个字符串中取出一个字符,然后从第二个字符串中取出一个字符,以此类推。一旦一个字符串没有字符,它就应该继续使用另一个字符串

输入:两个字符串,如s1="day"和s2="time"输出:一个结果字符串,对于上面的输入情况,它将是“dtaiyme”。

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

2条回答 默认 最新

  • cold_windx 2018-10-11 01:06
    已采纳

    #include
    #include
    using namespace std;
    string StrCon(const string& a, const string& b)
    {
    string c;
    int n = a.size(), m = b.size();
    if (0 == n) return a;
    if (0 == m) return b;
    int i, j;
    for (i = 0, j = 0; i < n && j < m; ++i, ++j)
    {
    c += a[i];
    c += b[i];
    }
    while (i < n)
    c += a[i++];
    while (j < m)
    c += b[j++];
    return c;
    }
    int main()
    {
    string s = "day", t = "time";
    cout << StrCon(s, t) << endl;
    system("pause");
    return 0;
    }

    
    
    点赞 打赏 评论
  • xingjianfengaa 2018-10-11 01:17

    char* catstr(char*str,const char*str1, const char*str2)
    {
    assert(str != NULL);
    if (!str1)
    {
    str =(char*) str2;
    return str;
    }
    if(!str2)
    {
    str = (char*)str1;
    return str;
    }

    char*ret = str;
    while (*str1!='\0'||*str2 != '\0')
    {
        if(*str1 != '\0')
            *str++ = *str1++;
        if (*str2 != '\0')
            *str++ = *str2++;
    }
    return ret;
    

    }

    点赞 打赏 评论

相关推荐 更多相似问题