//编写一个函数将两个字符串连接起来

#include<stdio.h>
#include<string.h>
#define M 26
int main()
{
  char s1[M],s2[M];
  int i=0,j;
//  int t1,t2;
 // t1=strlen(s1);
//  t2=strlen(s2);
  printf("请输入两个字符串\n");
  gets(s1);
  gets(s2);
  while(s1[i]!='\0')
  {
    i++;
  }
  for(j=0;s2[j]!='\0';j++)
  {
	 // printf("测试\n");
    s1[i++]=s2[j];
  }
  s1[i]='\0';
  printf("连接后的字符串是%s\n",s1);
  return 0;
}

写一个注意事项把:

  while(s1[i]!='\0')
  {
    i++;
  }

遍历第一个字符串,找到字符串的结束位置,我一开始写的是  while(s1[i++]!='\0');

这样写的话是不能实现字符串的连接的,因为这个自增运算符i最后变成了i+1,实际上是i的值是结束标志。所以在连接的时候出现错误。
 

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐