C语言:写一函数,将两个字符串连接

运行后显示答案错误,想请问一下原因#include<stdio.h>voidmain(){chars1[80],s2[80];inti=0,j=0;puts("input... 运行后显示答案错误,想请问一下原因
#include<stdio.h>
void main()
{ char s1[80],s2[80];
int i=0,j=0;
puts("input two strings:");
gets(s1);
gets(s2);
while(s1[i]!='\0') i++;
while((s1[i++]=s2[j++])!='\0');
printf("result:%s\n",s1);
}
展开
 我来答
忘至白葬不情必0T
2011-11-30 · TA获得超过3万个赞
知道大有可为答主
回答量:1.1万
采纳率:90%
帮助的人:1.2亿
展开全部
会不会是系统测试的数据太长了?
改成s1[161],s2[81]试试?
郝在益
2011-11-30 · TA获得超过2079个赞
知道小有建树答主
回答量:1496
采纳率:54%
帮助的人:613万
展开全部
这么麻烦干什么啊,C不是有一个字符串连接函数嘛。strcat这个函数就是的了,自己搜索一下啊
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
汪好帅
2011-11-30 · TA获得超过2829个赞
知道大有可为答主
回答量:1177
采纳率:0%
帮助的人:1396万
展开全部
gets(s1);
getchar(); //加上这句读取输入的回车。
gets(s2);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
furious_tauren
2011-11-30 · TA获得超过4053个赞
知道大有可为答主
回答量:1913
采纳率:100%
帮助的人:739万
展开全部
程序本身是没有错误的: 估计是你的程序不合题意, 把原题贴出来
追问
Description
写一函数,将两个字符串连接

Input
两行字符串

Output
链接后的字符串

Sample Input
123
abc
Sample Output
123abc
追答
1, 你原来的没有使用函数
2,有许多多余的打印信息

#include

char *mystr(char *s1, const char *s2)
{
int i = 0, j = 0;
while(s1[i] != '\0') i++;
while((s1[i++] = s2[j++]) != '\0');
return s1;
}

int main()
{
char s1[80], s2[80];
gets(s1);
gets(s2);
puts(mystr(s1, s2));
return 0;
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式