搜索
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 哪里错了?
标题:
哪里错了?
只看楼主
gutounan
等 级:
新手上路
帖 子:14
专家分:0
注 册:2010-3-28
结帖率:
14.29%
楼主
已结贴
√
问题点数:10 回复次数:2
哪里错了?
void fun( char *a )
{
int i,k,m,j=0;
char *p=a;
for(i=0;p[i]!=0;i++)
{j++;}
for(k=j;p[k]!='*';k--)
{m=k ;}
for(i=0;i<m;i++)
{
a[i]=p[i];
}
a[i]=0;
}
用于删除字符后面的*而中间和前面的都不删除。
搜索更多相关主题的帖子:
void
2011-03-24 09:49
犬虫门心
来 自:西安
等 级:
蝙蝠侠
帖 子:209
专家分:753
注 册:2011-1-25
第
2
楼
得分:10
void fun( char *a )
{
int i,k,m,j=0;
char *p=a;
for(i=0;p[i]!=0;i++)
{j++;}//
注意这里!当循环结束后,j的值应该是0结束标志的下标
for(k=j;p[k]!='*';k--)//
这里应该是,“从后向前,如果是*,则往前走,直到不是*。但是考虑到上面的问题,这里应该这样写:”
//
for(k = j-1; p[k] == '*'; k--)
{m=k ;}
for(i=0;i<m;i++)
{
a[i]=p[i];
}
a[i]=0;
}
当一名对得起学生学费的老师,一直是我的目标!我会更努力的!
2011-03-24 10:04
gutounan
等 级:
新手上路
帖 子:14
专家分:0
注 册:2010-3-28
第
3
楼
得分:0
回复 2楼 犬虫门心
呵呵,谢谢,确实是这样。
2011-03-24 10:35
3
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-334593-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 1.670693 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved