y大z力y 2022-05-07 18:34 采纳率: 83.3%
浏览 59
已结题

C++问题:已知一个字符串,实际长度为n。 写一个函数将此字符串中从第k个字符(k<n)开始的全部字符替换成为另一个字符串。

可以这样设计函数首部:
void strSubcpy(const char a[], char b[], int k)。
也可:
void strSubcpy(const char *a, char *b, int k)。
主函数中可以这样测试:

int main()
{
char str1[50] = "I study C very hard!";
char str2[50] = "C++ very hard!";
strSubcpy(str1, str2, 9);
cout<<str1<< endl;
cout<<str2<< endl;
return 0;
}

  • 写回答

1条回答 默认 最新

  • 柒号华仔 2022年度博客之星评选前沿技术领域TOP 1 2022-05-07 19:17
    关注

    代码如下,结果已验证:

    #include <iostream>
    using namespace std;
    
    void strSubcpy(char *a,const char *b, int k)
    {
        a = a+k-1;
        while(*b!='\0'){
            *a=*b;
            a++;
            b++;
        }
    }
    
    int main()
    {
        char str1[50] = "I study C very hard!";
        char str2[50] = "C++ very hard!";
        strSubcpy(str1, str2, 9);
        cout<<str1<<endl;
        cout<<str2<<endl;
        return 0;
    }
    
    
    

    运行结果:
    I study C++ very hard!
    C++ very hard!

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 5月15日
  • 已采纳回答 5月7日
  • 创建了问题 5月7日