| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 443 人关注过本帖
标题:请帮忙改错!
只看楼主 加入收藏
xiaogu149162
Rank: 2
等 级:论坛游民
帖 子:47
专家分:97
注 册:2009-7-16
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:5 
请帮忙改错!
我想实现的功能是:str2的字符串接着str1输出
例如:str1=123;str2=456;
输出是:str1=123456;str2=456;
请帮忙改错!


#include<stdio.h>
#include<string.h>
main(){int i,j;

char str1[30],str2[30];
gets(str1);
gets(str2);
i=strlen(str1);
/*for(i=0;str1[i]!='\0';i++)
str1[i]=str1[i];*/
for(j=0;str2[j]!='\0';j++)
{str1[i]=str2[j]   ;i+=1;}
str1[j]='\0';
puts(str1);
puts(str2);
getch();

}
搜索更多相关主题的帖子: 改错 
2009-07-16 23:32
紫ing~
Rank: 4
来 自:中科大
等 级:业余侠客
帖 子:103
专家分:273
注 册:2008-11-25
收藏
得分:0 
其实直接调用系统的函数比较简单,这样也可以

#include "stdio.h"
#include "string.h"
void main()
{ char s1[10],s2[10];
  gets(s1); gets(s2);
  strcat(s1,s2);
  puts(s1);puts(s2);
   
}

唯有天道恒在,往复循环,不曾更改。。。
2009-07-16 23:39
紫ing~
Rank: 4
来 自:中科大
等 级:业余侠客
帖 子:103
专家分:273
注 册:2008-11-25
收藏
得分:20 
你源程序str1[j]='\0'这里错了,应该是str1[i+j]='\0',然后我试过就可以了

唯有天道恒在,往复循环,不曾更改。。。
2009-07-16 23:54
曼珠沙华
Rank: 2
来 自:广东
等 级:论坛游民
帖 子:121
专家分:98
注 册:2009-5-21
收藏
得分:0 
char strcat(char a[],charb[])
{
    int i,j;
    for(i=0;a[i]!='\0';i++);
        for(j=0;b[j]!='\0';j++)
            a[i+j]=b[j];
    a[i+j]='\0';
    return a;
}
没有运行过,不过应该可以。

走过了,却留下了痕迹。伤过了,却是一种无奈。人生只不过是一种擦肩而过的过程。
2009-07-17 18:12
xiaogu149162
Rank: 2
等 级:论坛游民
帖 子:47
专家分:97
注 册:2009-7-16
收藏
得分:0 
回复 3楼 紫ing~
谢谢,我犯了一个低级的错误
2009-07-17 21:07
流浪人
Rank: 1
等 级:新手上路
帖 子:17
专家分:1
注 册:2009-7-6
收藏
得分:0 
#include<stdio.h>
#include<string.h>
main(){int i=0,j=0;

char str1[30]={0},str2[30]={0};
gets(str1);
gets(str2);
i=strlen(str1);
/*for(i=0;str1[i]!='\0';i++)
str1[i]=str1[i];*/
for(j=0;str2[j]!='\0';j++)
{str1[i]=str2[j]   ;i+=1;}
puts(str1);
puts(str2);
getch();

}
这样子也可以
2009-07-18 00:57
快速回复:请帮忙改错!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.014839 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved