C语言实现两行字符串连接成一行字符串

题目描述

编写自定义函数把一个字符串连接到另一个字符串的尾部(都不超80字符)。主函数输入两个字符串,输出连接后的新串。

输入格式:

两行,一行是一个字符串。

输出格式:

一行中输出连接后的新串。

输入样例:
Before a program is executed,
its code is first called into memory.
输出样例:
Before a program is executed,its code is first called into memory.

案例代码

#include <stdio.h>
#include <string.h>

void concatStrings(char dest[], const char src[]) {
    int destLen = strlen(dest);
    int srcLen = strlen(src);
    
    if (destLen + srcLen < 80) {
        strcat(dest, src);
    }
}

int main() {
    char str1[80];
    char str2[80];
    
    fgets(str1, sizeof(str1), stdin);
    fgets(str2, sizeof(str2), stdin);
    
    // 去除换行符
    str1[strcspn(str1, "\n")] = '\0';
    str2[strcspn(str2, "\n")] = '\0';
    
    concatStrings(str1, str2);
    
    printf("%s\n", str1);
    
    return 0;
}

在主函数中,我们使用fgets函数读取两行字符串,并使用strcspn函数去除换行符。然后,我们调用自定义函数concatStrings来将第二个字符串连接到第一个字符串的尾部(如果拼接后的长度不超过80个字符)。最后,我们使用printf函数输出连接后的新字符串。

请注意,在此示例中,我们假设输入的字符串不会超过80个字符。如果需要处理更长的字符串,请相应地修改代码。

© 版权声明
THE END
喜欢就支持一下吧
点赞11赞赏 分享