编一程序,将两个字符串连接起来,不要用strcat函数

如题所述

方法和详细的操作步骤如下:

1、第一步,打开pycharm编辑器,见下图,转到下面的步骤。

2、第二步,执行完上面的操作之后,在文件中写一个注释,见下图,转到下面的步骤。

3、第三步,执行完上面的操作之后,创建第一个字符串str1
 =“ my name”,见下图,转到下面的步骤。

4、第四步,执行完上面的操作之后,创建第二个字符串str2
 =“ is feng”,见下图,转到下面的步骤。

5、第五步,执行完上面的操作之后,将两个字符串拼接在一起以形成新的字符串str3
 = str1 + str2,见下图,转到下面的步骤。

6、第六步,执行完上面的操作之后,打印出连接的字符串,见下图,转到下面的步骤。

7、第七步,执行完上面的操作之后,运行该程序并获得结果,见下图。这样,就解决了这个问题了。

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-11-26
上边那位同志的操作有些危险,还有错误。
函数的引数void *mystrcat(char* s1, char* s2)
第一个引数输入在函数外部 char *a="asdfasdf" 声明 编译通过但是运行会出现错误 (*a 指向的内容被视为是常量,不可改变)
或者 char a[]="ab",也会出错,(长度超限,运行时错误)
除非char a[100]="ab",2个字符串长度不超过100才会通过。

最好状态知道2个字符串长度,建立一个新字符串把2个字符串复制进去 如果不知道长度的情况,就应该用连表
最简单的状态,2个知道长度的字符串。
int main()
{
char *a="qwet",*b="woei";//2个4长度的字符串
char c[20]; //一个长度大于2字符串长度的的字符数组
int i,j;
for( i=0,j=0;*(a+i);i++ ,j++)//第一个字符串复制,到遇到结束标志停止
c[j]=*(a+i);
for(i=0 ; *(b+i);i++,j++ )//第二个字符串复制,到遇到结束标志停止
c[j]=*(b+i);
c[j]='\0'; //给字符数组加入结束标志
for( i=0 ; c[i] ;i++ )
printf("%c ",c[i]);
}本回答被提问者采纳
第2个回答  2006-05-14
将两个字符串连接起来,不用strcat函数,可用sprintf呀.
下面是把字符串a和字符串b,放到x里,就连好了.

#include <stdio.h>
#include <stdlib.h>
main()
{
char a[]="abcd fgh -- "; // 有字符"空白"号也不怕
char b[]="12345 7890";
char x[80];
sprintf(&x[0],"%s%s\0",a,b); // 把ab连起来
printf("%s",x); // 打出结果来看看
}
第3个回答  2021-03-11

先看运行截图:

运行截图

上代码:

#include <stdio.h>

#include <string.h> 

main(){

int i=0,j=0;

char a[100],b[10];

gets(a); //用来接收字符串

gets(b);

printf("a = %s\tb = %s\n",a,b);

while(a[i++] != '\0'); //找到a最后的一位

--i;

while((a[i++] = b[j++]) != '\0'); //将a和b连接起来 代码核心

i =0;

printf("a = ");

while(a[i] != '\0') printf("%c",a[i++]);  //输出a的值

return 0;

}

第4个回答  2012-02-27
#include<stdio.h>
int main()
{
int i,j;
char str1[80]={"China"};
char str2[80]={" is a Country"};
for(i=0;str1[i]!='\0';i++)//计算长度
;
for(j=0;str2[j]!='\0';j++,i++)
{
str1[i]=str2[j];
}
//str1[i]='\0';
printf("合成后:%s",str1);
putchar('\n');
return 0;
}

c语言! 编一程序,将两个字符串连接起来,不要用strcat函数.
思路:字符串连接先需要找到第一字符串的结束位置,接着把第二字符串元素放到第一字符串后面,最后加上结束标志即可。参考代码:拼接123和456 include<stdio.h>void mystrcat(char a[],char b[]){\/\/字符串连接函数 int i=0,j=0;while(a[i++]!='\\0');\/\/找到a的结束位置 i--;while(b[j...

编一程序,将两个字符串连接起来,不要用strcat函数
1、第一步,打开pycharm编辑器,见下图,转到下面的步骤。2、第二步,执行完上面的操作之后,在文件中写一个注释,见下图,转到下面的步骤。3、第三步,执行完上面的操作之后,创建第一个字符串str1 =“ my name”,见下图,转到下面的步骤。4、第四步,执行完上面的操作之后,创建第二个字符...

编一程序,将两个字符串连接起来,不要用strcat函数.
void main(void){ char str1[LENGTH + 1],str2[LENGTH + 1];char result[2 * LENGTH + 1];int len1,len2;cout<<"Input the first string:"<<endl;cin>>str1;cout<<"Input the second string."<<endl;cin>>str2;len1 = 0;while(str1[len1] != '\\0'){ result[len1] = s...

编写一个程序,将两个字符串连接起来,并输出(不要使用strcat函数)。用C...
printf("The new string is:%s\\n",s1);}

...程序,将两个字符串连接起来,不要使用strcat函数 求大神,我这个代码...
函数头我就不和你写了!int a[20],b[20],i=0,j=0;while(a[i]!='\\0'){ i++;} while(b[i]!='\\0'){ a[i++]=b[i++];} a[i]='\\0';printf("%s",a);就可以了!!

C语言:编一程序,将两个字符串连接起来。 要求:不允许使用strcat函数
include<stdio.h>#include<stdlib.h>\/*程序入口点函数*\/int main(){ int i,j; char str1[100],str2[100],str3[201]; gets(str1); gets(str2); for(i=0;str1[i]!='\\0';i++) str3[i]=str1[i]; for(j=0;str2[j]!='\\0';j++) str3[j+i]...

用c语言编写程序,将两个字符串连接起来,不要用strcat函数
<stdio.h>#include <string.h>void strc(char c1[],char c2[]);void main(){char s1[30]="abc";char s2[30]="def";strc(s1,s2); \/\/请在后面补充strc函数的功能,完成两个字符串的连接puts(s1);}void strc(char c1[],char c2[]){ \/\/请填空,完成两个字符串的连接 int...

将两个字符串连接起来 不要用strcat函数运行结果
1、首先打开pycharm编辑器。2、在文件里面写上注释。3、新建第一个字符串str1="my name"。4、新建第二个字符串str2="is feng"5、将这两个字符串拼接起来组成新的字符串str3=str1+str2。6、将拼接的字符串打印出来。7、运行这个程序,得出结果。

在C语言中编写一个程序将两个字符串连接起来 不用strcat函数 我编的...
int i=0,j=0;printf("请输入第一个字符串");gets(str1);printf("\\n请输入第二个字符串");gets(str2);i = strlen(str1) ;while(str2[j]!='\\0'){ str1[i]=str2[j];i++;j++;} str1[i]='\\0';printf("\\n两个字符连接后为:%s \\n",str1);} 那个while循环多余了,用不...

[C语言] 不用strcat()函数,将两个字符串连接起来,试完善一下程序!!!
include<stdlib.h> int main(){ char s1[80],s2[40];int i=0,j=0;printf("Enter s1:");\/\/改成用gets函数 \/\/因为如果输入的字符串中间或末尾包含空格 \/\/用scanf函数会造成输入不正确 gets(s1);printf("Enter s2:");gets(s2);while('\\0'!=s1[i]){ i++;} while(1){ s1[i]=...

相似回答