C语言程序问题(解答)

来源:百度知道 编辑:UC知道 时间:2024/05/02 18:30:20
编一程序,将俩个字符串连接起来。不要用strcat函数#include<stdio.h>void main(){ char c1[80],c2[40]; int i=0,j=0; printf("\n输入 c1:");/*输入C1时执行“while(c1[i]!='\0')”它吗?*/ scanf("%s",&c1); printf("\n输入 c2:"); scanf("%s",&c2);/*输入C2时执行“while(c2[j]!='\0')”它吗?*/ while(c1[i]!='\0') i++; while(c2[j]!='\0') c1[i++]=c2[j++]; c1[i]='\0';/*这一句的作用是?*/ printf("合并后的数为:%s\n",c1);}

FT,您这代码这个乱的~~~~

我给你详细注释一下吧:)

#include<stdio.h>

void main()
{
char c1[80],c2[40];
int i=0,j=0;
printf("\n输入 c1:");//提示用户输入c1
scanf("%s",&c1); //读取用户输入的字符串,存入c1
printf("\n输入 c2:");//提示用户输入c2
scanf("%s",&c2);//读取用户输入的字符串,存入c2

while(c1[i]!='\0') i++; //将c1的当前下标,移到字符串最后,也就是串尾符'\0'的位置

while(c2[j]!='\0') c1[i++]=c2[j++]; //将c2的各个字符拷贝到以c1的串尾符为起始的存储空间

c1[i]='\0';//这一句的作用是:给拷贝完毕后的新的c1加上串尾符'\0'

printf("合并后的数为:%s\n",c1);
}