标题:我来问个简单的!
只看楼主
疯狂VC
Rank: 1
等 级:新手上路
威 望:1
帖 子:375
专家分:0
注 册:2006-3-29
 问题点数:0 回复次数:22 
我来问个简单的!
这两天来了不少的高手!让我这个小小的菜鸟只能上水区浪费青春去了!
-------------------------------------
好了!进入正题!
这是前两天看到的帖子!可是找不到了!
题目是这样的!设计一个fun(a[],b[])函数!实现将a 数组中的元素复制到b数组中!再复制过程中每到三个字符加一个空格!
如:abcdefghijk复制到b后为abc def ghi jk
我做了好几天了!总是得不到正确的结果!请不要笑话我噢!
我的程序如下(当然!这是个有错的):
#include<stdio.h>
main()
{
void Fun(char a[],char b[],int n);
char a_1[20],b_1[20];
int l;
printf("Please enter a stream:");
gets(a_1);
l=strlen(a_1);
Fun(a_1,b_1,l);
puts(b_1);
getch();
return 0;
}
void Fun(char a[],char b[],int n)
{
int i,k=0;
for(i=0;i<=n;i++)
{
if(i==0)
b[i]=a[i];
else
if(i%3==0)
{
b[i+k]=32;
k++;
}
else
b[i+k]=a[i];
}
}
搜索更多相关主题的帖子: include 笑话 青春 
2006-06-02 23:22
烟雨平生
Rank: 1
等 级:新手上路
帖 子:253
专家分:0
注 册:2005-11-20
得分:0 

看你灌水到是很有水平啊

char *fun(char * A,char* B)
{
int t=0;
char *a=A,*b=B;

while(*a++=*b++)
{
t++;
if(t==3)
{
*a++=' ';
t=0;
}
}

return A;
}


君子之道,五日一御
2006-06-02 23:32
–★–
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1512
专家分:0
注 册:2006-5-1
得分:0 

/*以下经过调试*/
void Fun(char a[ ],char b[ ],int n)
{
int i,j;
for(j=i=0;i<n;i+=3,j+=4)
sprintf(b+j,"%c%c%c ",a[i],a[i+1],a[i+2]);
}

[此贴子已经被作者于2006-6-2 23:39:04编辑过]


落霞与孤鹜齐飞,秋水共长天一色! 心有多大,路有多宽。三教九流,鸡鸣狗盗。兼收并蓄,海纳百川。
2006-06-02 23:32
疯狂VC
Rank: 1
等 级:新手上路
威 望:1
帖 子:375
专家分:0
注 册:2006-3-29
得分:0 
以下是引用–★–在2006-6-2 23:32:00的发言:
/*以下未经过调试,对不起*/
void Fun(char a[],char b[],int n)
{
int i,j;
for(j=i=0;i<n;i+=3,j+=4)
sfrintf(b+j,"%3s ",a+i);
}

我把sfrintf(b+j,"%3s ",a+i);改成了sprintf(b+j,"%3s",a+i);
可是没有得到正确结果!不过仍谢了!

同时RE:烟雨平生!我确实老是灌水去!呵呵~~不好意思了


2006-06-02 23:37
–★–
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1512
专家分:0
注 册:2006-5-1
得分:0 
看我刚刚修改后的那个(老地方)

落霞与孤鹜齐飞,秋水共长天一色! 心有多大,路有多宽。三教九流,鸡鸣狗盗。兼收并蓄,海纳百川。
2006-06-02 23:40
疯狂VC
Rank: 1
等 级:新手上路
威 望:1
帖 子:375
专家分:0
注 册:2006-3-29
得分:0 
以下是引用烟雨平生在2006-6-2 23:32:00的发言:

看你灌水到是很有水平啊

char *fun(char * A,char* B)
{
int t=0;
char *a=A,*b=B;

while(*a++=*b++)
{
t++;
if(t==3)
{
*a++=' ';
t=0;
}
}

return A;
}

我把while(*a++=*b++)也改了while(*a++==*b++)
说明语句也改了!也没有得到正确的结果!

不过我对返回一个指针的函数还是感兴趣的!
容我再看看!


2006-06-02 23:44
穆扬
Rank: 1
等 级:禁止发言
帖 子:1910
专家分:0
注 册:2006-6-1
得分:0 
提示: 作者被禁止或删除 内容自动屏蔽

2006-06-02 23:44
烟雨平生
Rank: 1
等 级:新手上路
帖 子:253
专家分:0
注 册:2005-11-20
得分:0 
[QUOTE]我把while(*a++=*b++)也改了while(*a++==*b++)
说明语句也改了!也没有得到正确的结果[/QUOTE]

这能改么?不能!


君子之道,五日一御
2006-06-02 23:46
疯狂VC
Rank: 1
等 级:新手上路
威 望:1
帖 子:375
专家分:0
注 册:2006-3-29
得分:0 
以下是引用–★–在2006-6-2 23:40:00的发言:
看我刚刚修改后的那个(老地方)

看到了!也运行了!是正确的!让我再看看吧!!

消化消化!


2006-06-02 23:47
烟雨平生
Rank: 1
等 级:新手上路
帖 子:253
专家分:0
注 册:2005-11-20
得分:0 

[QUOTE]a、b两个多余,直接用A、B就可以[/QUOTE]
请问如何返回A?


君子之道,五日一御
2006-06-02 23:47



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-69410-1-1.html




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

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