解题思路和注意事项:

思路:定义两个数组,分别用gets()函数输入,再用strcat()进行连接,最后用puts()函数进行输出即可。

函数用法:gets()和puts()函数请见上一篇文章。

                 strcat()就是将两个char型进行连接,在头文件string.h中。

                        表现形式:strcat(a,b)。把a所指字符串添加到b结尾处(覆盖a结尾处的'\0')。


注意:a和b所指内存区域不可以重叠且a必须有足够的空间来容纳b的字符串。


参考代码:


#include<stdio.h>
#include<string.h>
int main()
{
	char a[1000],b[1000];
	gets(a);
	gets(b);
	strcat(a,b);
	puts(a);
	return 0;
}


 

0.0分

164 人评分

  评论区

#include <stdio.h>
#include <string.h>
char connect( char a[],char b[]);
int main()
{
  char a[1000];
  char b[1000];
  gets (a);
  gets (b);
  connect (a,b);
  puts (a);

}
char connect( char a[],char b[]){
  int i=0;
  int k=0;
  int len1 = strlen(a);
  int len2 = strlen(b);
   for( i= len1; i< len1 + len2 ; i++){
     a[i] = b[k];
     k++;
   }
   a[i]='\0';
   return *a;
}
2019-02-28 21:03:46
#include<stdio.h>
#include<string.h>
f(char *s1,char *s2,char *s3)
{
  int i,j,p,t=0;
  for(;*s1!='\0';)
         *s3++=*s1++;
     j=i;
  for(;*s2!='\0';)
	 *s3++=*s2++;
      *s3++='\0';
}
	int main()
	{
		int i;
		char a[200],b[200],c[400];
		gets(a);
	    gets(b);
		f(a,b,c);
	     puts(c);
	}
2018-11-08 09:48:13
不符合题意还优质题解,不知验题君咋想的。以下不算最好但是至少符合题意

//字符串追加

#include<stdio.h>
#include<string.h>
void Addchar(char* p1, char* p2);

void Addchar(char* p1, char* p2)
{
	int nLength1 = strlen(p1);
	int nLength2 = strlen(p2);

	memcpy(p1 + nLength1, p2, nLength2);
	p1[nLength1 + nLength2] = '\0';
}

int main()
{
	char a[100];
	char b[100];

	gets_s(a);
	gets_s(b);

	Addchar(a, b);

	puts(a);

    return 0;
}
2018-09-20 14:17:11
和题目要求相符?
2018-08-11 18:41:46
#include<stdio.h>
void ver(char a[],char b[])
{
	char ch[200];
	int i,j;
	for(i=0;a[i]!='\n';i++)
	{
		ch[i]=a[i];
	}
	for(j=0;b[j]!='\n';i++,j++)
	{
		ch[i]=b[j];
	}
	printf("%s",ch);
	return;
}
int main(void)
{
	char a[100];
	char b[100];
	scanf("%s %s",&a,&b);
	ver(a,b);
	return 0;
}

dalao看下哪里错了  指点下 谢谢
2018-08-02 16:04:01