编写程序,从键盘输入两个字符串(长度不超过20个字符),将两个字符串联起来,要求不用strcat库函数

C语言

用C语言的话这样编写:

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

int main()
{
char a[123],b[123];
scanf("%s %s",a,b);
int i,la=strlen(a),lb=strlen(b);
for(i=0;i<lb;i++)    //这里开始链接
a[la+i]=b[i];
a[la+i]='\0';
printf("%s\n",a);
return 0;
}

C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-12-15
可以试一试这个 没有其他的函数#include "stdio.h"
void main()
{
char str1[21], str2[21],str3[41];
scanf("%s", str1);
scanf("%s", str2);
int a;
for(int i=0;i<21;i++)
{
if(str1[i]=='\0')
a=i;
}

for(int j=0;j<41;j++)

{

if(j<a)
str3[j]=str1[j];
if(j>=a)
str3[j]=str2[j-a];

}
printf(str3);
}本回答被网友采纳
第2个回答  2013-12-04
void main(){ char str1[42], str2[21]; scanf("%s", str1); scanf("%s", str2); int len = strlen(str1); memcpy( str1+len, str2, sizeof(char)*strlen(str2) ); printf("%s", str1);}
相似回答