C语言,将两个数组中的字符串合并为一个,不能用连接函数
#include<stdio.h>#include<conio.h>intmain(){chars1[100],s2[100],s3[100];inti,j,a,b,c;...
#include<stdio.h>
#include<conio.h>
int main()
{
char s1[100],s2[100],s3[100];
int i,j,a,b,c;
i=0;j=0;
while(s1[i]!='\0')
{scanf("%c",&s1[i]);
i++;
}
a=strlen(s1);
while(s2[j]!='\0')
{scanf("%c",&s2[j]);
j++;
}
b=strlen(s2);
printf("%d,%d\n",a,b);
for(i=0;s1[i]!='\0';i++)
{s3[i]=s1[i];}
for(i=0;s2[i]!='\0';i++)
{s3[i+a]=s2[i];}
c=a+b;
for(i=0;i<c;i++)
printf("%c",s3[i]);
}
运算结果有错,但是找不出来。。求解答!!! 展开
#include<conio.h>
int main()
{
char s1[100],s2[100],s3[100];
int i,j,a,b,c;
i=0;j=0;
while(s1[i]!='\0')
{scanf("%c",&s1[i]);
i++;
}
a=strlen(s1);
while(s2[j]!='\0')
{scanf("%c",&s2[j]);
j++;
}
b=strlen(s2);
printf("%d,%d\n",a,b);
for(i=0;s1[i]!='\0';i++)
{s3[i]=s1[i];}
for(i=0;s2[i]!='\0';i++)
{s3[i+a]=s2[i];}
c=a+b;
for(i=0;i<c;i++)
printf("%c",s3[i]);
}
运算结果有错,但是找不出来。。求解答!!! 展开
3个回答
展开全部
//首先你的输入就不对,因为'\0'是没办法输入的。后面的a,b的漏让值也就不存在什么意义了。给你一个程序,你自己看返前局一下吧。
#include<stdio.h>
#include<conio.h>
int main()
{
char s1[100],s2[100],s3[100];
int i,j,a,b,c;
scanf("%s",s1);
scanf("%s",s2);
for(i=0;s1[i] != '\0';i++)
{
s3[i]=s1[i];
}
for(j=0;s2[j] !='\0'悔兆;j++)
{
s3[i+j]=s2[j];
}
s3[i+j]='\0';
printf("%s",s3);
}
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include 键清漏<stdio.h>
#include <string.h>
void main()
{
char s1[100], s2[100], s3[100];
int i, j, 稿烂a, b;
printf("input str1:\n"); scanf("%s", s1);
printf("input str2:\n"); 正漏scanf("%s", s2);
a = strlen(s1);
b = strlen(s2);
printf("%d, %d\n", a, b);
i = 0;
while(s1[i]) { s3[i] = s1[i]; i++;}
j = 0;
while(s2[j]) { s3[i] = s2[j]; i++; j++;}
s3[i] = 0;
for(i = 0; i < (a + b); i++)
printf("%c", s3[i]);
printf("\n");
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询