超级甲鱼粉 发表于 2020-1-30 17:57:02

c语言初学者求助

从网课上学了一个   “输入一个字符串,再输入一个字符,把字符串中的该字删去后再输出改过后的字符串”,用了3个外部函数,但是输完要删的字母后输不出结果,跟课件上的源代码对比好像没有错,不知道为什么?非常感谢。

file 1:                                                                     
#include <stdio.h>                                                   
void main()

{
        extern void enter_string(char str[]);
        extern void delete_string(char str[],char ch);
        extern void print_string(char str[]);

        char c;
        char str;

        enter_string(str);
        scanf("%c",c);
        delete_string(str,c);
        print_string(str);
}
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
file 2:
#include <stdio.h>

void enter_string(char str)
{
        gets(str);
}
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
file 3:


void delete_string(char str[],char ch)
{
        int i, j;

        for(i=j=0;str != '\0';i++)
        {
                if(str != ch )
                {
                        str = str;
                }
        }
        str = '\0';
}
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
file 4:
#include <stdio.h>

void print_string(char str[])

{
        printf("%s\n",str);
}

superbe 发表于 2020-1-30 19:45:59

main里是不是忘加地址符了:
scanf("%c",c);应是scanf("%c",&c);
页: [1]
查看完整版本: c语言初学者求助