以文本方式查看主题

-  计算机科学论坛  (http://bbs.xml.org.cn/index.asp)
--  『 C/C++编程思想 』  (http://bbs.xml.org.cn/list.asp?boardid=61)
----  帮我看看这程序  (http://bbs.xml.org.cn/dispbbs.asp?boardid=61&rootid=&id=32075)


--  作者:crwfnh05
--  发布时间:5/10/2006 6:14:00 PM

--  帮我看看这程序
#include <stdio.h>
void main()
{char del(char a[],char ch);     /*   定义一个输入一个当字符串中的字符和定义字符相同 时删除字符串中的函数  */
char a[30];
char ch;
gets(a);
get(&ch);
del(a,ch);  /*调用del 删除函数*/
printf("%s\n",a);
}
char del(char s[],char b)  /*del被调函数*/
{
int i=0;
while(s[i]!='\0')
{
if (s[i]=b)     /*就是这里出错*/
s[i]='\0';
i++;
}
}

我不知道是怎么的,我以前一个程序也是这样类型写的都可以运行,现在的这个总是在“b”那出错,帮我看看;


--  作者:guichen
--  发布时间:5/11/2006 9:09:00 AM

--  
"s[i]=b "还是"s[i]==b"     ???
--  作者:firstway
--  发布时间:5/11/2006 12:32:00 PM

--  
while(s[i]!='\0')
{
if (s[i]==b)     /*这里已经改成==*/
s[i]='\0';
i++;
}
按照这个函数,不但删除字符b,,s[i]='\0'还屏蔽b后面的所有字符了(如果后面有的话)
--  作者:crwfnh05
--  发布时间:5/11/2006 12:47:00 PM

--  
就是啊,我再改改。
--  作者:zhaoxue86
--  发布时间:5/26/2006 11:40:00 PM

--  
如果重复出现同一字符呢?
可不可以用双重循环呢?
for的你可以想一下!!
--  作者:elfstone
--  发布时间:5/27/2006 12:37:00 AM

--  
#include "stdio.h"
int main()
{
    char c,ch;
    scanf("%c",&c);
    getchar();
    char s[30];    //在不定量输入的情况下,可以考虑动态分配数组容量
    int i=0;
    scanf("%c",&ch);
    while(ch != '\n')
    {
        if(c != ch)
            s[i++] = ch;
        scanf("%c",&ch);
    }
    s[i] = '\0';
    printf("%s",s);
    getchar();
    return 0;
}


--  作者:crwfnh05
--  发布时间:5/27/2006 7:02:00 PM

--  
上面的那两个getchar()是起什么作用的啊
我觉得不要也可以啊 。
--  作者:elfstone
--  发布时间:5/27/2006 11:04:00 PM

--  
第一个用来吸收换行符,第二个用来暂留屏幕。。。
--  作者:crwfnh05
--  发布时间:5/28/2006 10:32:00 PM

--  
哦,可以啊以后就可以不用ALT+F5来看了。
--  作者:crwfnh05
--  发布时间:5/28/2006 10:35:00 PM

--  
但是那个return ()起什么起用呢?
--  作者:adison83
--  发布时间:5/31/2006 1:50:00 PM

--  
PRINTF 遇到\0就停止输出了 所以不管你后头有什么他都不显示啦~~~
--  作者:elfstone
--  发布时间:6/1/2006 4:45:00 PM

--  
以下是引用crwfnh05在2006-5-28 22:35:00的发言:
但是那个return ()起什么起用呢?


是return 0
建议找本C/C++的教材仔细阅读一下。。。
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
46.875ms