| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 695 人关注过本帖
标题:str1怎么变成了"AB?"呢
只看楼主 加入收藏
zfzdhz
Rank: 1
等 级:新手上路
帖 子:55
专家分:0
注 册:2008-8-21
收藏
 问题点数:0 回复次数:5 
str1怎么变成了"AB?"呢
void fun(char *s1,char *s2)
{
 int j;char *p=s1,8q;
while(*p)
  {
   if(*p>='a'&&*p<='z')
{*s2++=*p;q=p;while(*q){*q=*(q+1);q++;}}
}else p++;
*s2='\0';
}
main()
{
char str1[20]="AabBc?",str2[10];
fun(str1,str2);
printf("%s\n%s\n",str1,str2);
}
str1怎么变成了"AB?"呢而不是"AabBc?"那个地方使得str1变了???
2008-10-04 16:18
守鹤
Rank: 4
来 自:山東臨沂
等 级:贵宾
威 望:12
帖 子:337
专家分:0
注 册:2008-6-20
收藏
得分:0 
[bo][un]zfzdhz[/un] 在 2008-10-4 16:18 的发言:[/bo]

void fun(char *s1,char *s2)
{
 int j;char *p=s1,8q;
 

8q是什么意思啊,

多少个日日夜夜想起你,只希望有缘再次相见
2008-10-04 16:39
netsolo
Rank: 1
等 级:新手上路
帖 子:122
专家分:0
注 册:2008-3-6
收藏
得分:0 
void fun(char *s1,char *s2)
{
    int j;char *p=s1,*q;

    while(*p) {
        if(*p>='a'&&*p<='z') {    /* 如果 (*p) 在a-z之间 */
            *s2++=*p;             /* 则把 (*p) 赋值给 (*s2), 并且 s2 指针 +1 指向下一个内存单元 */
            q=p;                  /* 这里让指针 q 指向 s1 当前被 p 指向的单元 */

            while (*q) {          /* 这个循环把 q 所指的单元后面的所有字符向前移动一个位置 */
                *q=*(q+1);
                q++;
            }
        }
    }
    else
        p++;

    *s2='\0';
}

这个函数做了什么呢?
即把 s1 中的所有小写字母放到 s2 中, 并且把那些小写字母从 s1 中删除.
2008-10-04 16:43
一起补天
Rank: 2
等 级:论坛游民
帖 子:73
专家分:61
注 册:2008-9-19
收藏
得分:0 
那么楼主的意思是什么呢,这个程序的功能是什么呢
2008-10-05 10:25
菜菜小
Rank: 1
等 级:禁止发言
帖 子:23
专家分:0
注 册:2008-10-7
收藏
得分:0 
提示: 作者被禁止或删除 内容自动屏蔽
2008-10-07 14:31
hoodlum1980
Rank: 2
来 自:浙江大学
等 级:论坛游民
威 望:2
帖 子:289
专家分:23
注 册:2008-2-24
收藏
得分:0 
楼上已经回答了。程序功能是把str1中所有小写字母复制到str2中,并且在str1中剔除它们。

问题是lz给的函数代码好像写错了。应该如下:
程序代码:
void fun(char *s1,char *s2)
{
    int j;
    char *p=s1,*q;
    while(*p)
    {
        if(*p>='a' && *p<='z')
        {
            *s2++=*p;
            q=p;
            while(*q)
            {
                *q=*(q+1);
                q++;
            }
        }
        else
            p++;
    }

    *s2='\0';
}
2008-10-08 14:21
快速回复:str1怎么变成了"AB?"呢
数据加载中...
 
   



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

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