| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 491 人关注过本帖
标题:请大家帮我修改一下这个程序
只看楼主 加入收藏
陈凤伟
Rank: 1
来 自:四川
等 级:新手上路
帖 子:23
专家分:2
注 册:2011-5-26
结帖率:100%
收藏
 问题点数:0 回复次数:8 
请大家帮我修改一下这个程序
编写一个函数,实现字符串拼接函数strcat().

#include<stdio.h>
#define m 10
char rcat(char aaa[],char sss[],char ddd[]){
    int i,e=0,s;
    for(i=0;i<m;i++){
        if(aaa[i]!='\0'){ddd[i]=aaa[i];e++;}
        else break;
    }
    for(s=0;;s++){
        ddd[e]=sss[s];
        e++;
        if(ddd[e]=='\0')break;
    }
    return ddd;
}
void main(){
    char abs[m],fds[m],qwe[m];
    printf("输入数组two:\n");
    printf("abs<m:");
    gets(abs);
    printf("fds<m:");
    gets(fds);
    rcat(abs,fds,qwe);
    puts(qwe);
    return;
}
搜索更多相关主题的帖子: return 字符串 
2011-06-16 11:49
hjywyj
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:3
帖 子:1114
专家分:2611
注 册:2010-4-14
收藏
得分:0 
用指针
程序代码:
void rcat(char *aaa,char *sss,char *ddd)
{strcpy(ddd,aaa);
int i;
for(i=0;i<strlen(sss);i++)
ddd[i+strlen(aaa)]=sss[i];
ddd[strlen(aaa)+strlen(sss)]=0;
}

2011-06-16 11:54
hjywyj
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:3
帖 子:1114
专家分:2611
注 册:2010-4-14
收藏
得分:0 
qwe[m];//改为 qwe[m*2];
2011-06-16 11:56
stophin
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:3
帖 子:227
专家分:618
注 册:2010-3-26
收藏
得分:0 
楼上说的对,另外把return ddd;也去掉
2011-06-16 15:28
stophin
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:3
帖 子:227
专家分:618
注 册:2010-3-26
收藏
得分:0 
用指针做就可以不受长度的限制:
#include<stdio.h>
#include <stdlib.h>
#include <conio.h>
char rcat(char aaa[],char sss[],char ddd[]){
    int i,s;
    for(i=0;aaa[i]!='\0';i++)
    {
           ddd[i]=aaa[i];
    }
    ddd[i]='\0';
    for(s=0;sss[s]!='\0';s++)
    {
        ddd[i++]=sss[s];
    }
    ddd[i]='\0';
}
int main(){
    char *abs,*fds,*qwe;
    abs=(char *)malloc(sizeof(char));
    fds=(char *)malloc(sizeof(char));
    qwe=(char *)malloc(sizeof(char));
    printf("ハ菠・ラ騁wo」コ\n");
    printf("abs」コ");
    gets(abs);
    printf("fds:");
    gets(fds);
    rcat(abs,fds,qwe);
    puts(qwe);
    getch();
    return 1;
}
2011-06-16 15:36
木偶然
Rank: 2
等 级:论坛游民
帖 子:29
专家分:22
注 册:2011-6-12
收藏
得分:0 
#include<stdio.h>
#define m 10
char *rcat(char aaa[],char sss[],char ddd[]){
    int i,e=0,s;
    for(i=0;i<m;i++){
        if(aaa[i]!='\0'){ddd[i]=aaa[i];e++;}
        else break;
    }
    for(s=0;;s++){
        ddd[e]=sss[s];
        e++;
        if(ddd[e]=='\0')break;
    }
    return ddd;
}
void main(){
    char abs[m],fds[m],qwe[m];
    printf("输入数组two:\n");
    printf("abs<m:");
    gets(abs);
    printf("fds<m:");
    gets(fds);
    rcat(abs,fds,qwe);
    puts(qwe);
    return;
}
2011-06-16 15:56
木偶然
Rank: 2
等 级:论坛游民
帖 子:29
专家分:22
注 册:2011-6-12
收藏
得分:0 
返回一个指针类型
2011-06-16 15:57
ansic
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:恍惚窈冥
等 级:城市猎人
帖 子:1543
专家分:5367
注 册:2011-2-15
收藏
得分:0 
程序代码:
void cat(char *a,char *b,char *c) {
        while(*a) *c++=*a++;
        while(*b) *c++=*b++;
        *c='\0';
}

善人者,不善人之师;不善人者,善人之资。不贵其师,不爱其资,虽智大迷。
2011-06-16 16:09
laoyang103
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:内蒙古包头
等 级:贵宾
威 望:19
帖 子:3082
专家分:11056
注 册:2010-5-22
收藏
得分:0 
楼上犀利哥

                                         
===========深入<----------------->浅出============
2011-06-16 17:53
快速回复:请大家帮我修改一下这个程序
数据加载中...
 
   



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

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