您的位置:首页 > 编程语言 > C语言/C++

C语言实现将两个字符串连接起来输出(不使用 strcat 或 strncat 函数)

2019-01-27 11:11 1046 查看

1.编写一个程序,将两个给定的字符串连接起来,要求不使用 strcat 或 strncat 函数。

[code]#include <stdio.h>
#include <strings.h>
#include <string.h>

int main(void)
{
char s1[100];
char s2[100];
bzero(s1, 100); // 将数组s1中的100个字节,清零
bzero(s2, 100); // 将数组s2中的100个字节,清零

printf("请输入两个字符串:\n");

//scanf("%s", s1); // 从键盘输入字符串(不含空格,并且不安全),放到s1中
//scanf("%s", s2);

printf("输入第一个字符串s1(少于100个字符):\n");
fgets(s1, 100, stdin); // 从键盘输入字符串(最多不超过100个字节),放到s1中
printf("输入第二个字符串s2(少于100个字符):\n");
fgets(s2, 100, stdin); // 从键盘输入字符串(最多不超过100个字节),放到s2中

printf("s1: %s", s1);
printf("s2: %s", s2);

// strlen(): 获取指定字符串的长度(不含'\0')
char s3[strlen(s1)-1 + strlen(s2) +1];
//            去掉'\n'         加上'\0'

int i;
for(i=0; i<strlen(s1)-1; i++)
{
s3[i] = s1[i];
}

int j;
for(j=0; j<strlen(s2)+1; j++, i++)
{
s3[i] = s2[j];
}

printf("合并后s3: %s", s3);
return 0;
}

运行结果:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐