VIGO632 2022-01-05 11:02 采纳率: 100%
浏览 155
已结题

这个c语言程序怎么写?

编写函数Delete()在字符串中删除给定的某字符。例如:在"hello“中删掉” 1’结果为"heo”,
然后在主函数中,输入字符串和待删除的字符,再谓用函数Delete删除字符串中与该字符相同的字符,最后输
出删除字符后的字符串。
程序运行结果示例:
Input a string;
hello, my friend!
Input a character:

Results:heo, my friend!
输入格式:
输入字符串用 getsQ函数
输入单个字符用 getchar O函数
输出格式:
输入字符串的提示信息:“Input a string:Nn"
输入单个字符的提示信息:“Input a character:Nn"
输出格式:"Results:%s\n"

  • 写回答

2条回答 默认 最新

  • a5156520 2022-01-05 12:36
    关注

    一个实现:

    
    #include <stdio.h>
    
    //获取字符串 
    getsQ(char *str){
        gets(str);    
    }
    
    //获取字符 
    getcharO(char * ch){
        
        *ch =getchar();
        
        
    }
    //删除函数 
    Delete(char * str,char ch){
        
    
        int i=0,j=0;
        
        //循环判断到字符串结尾 
        while(str[i]!='\0'){
            //如果字符串当前字符不是要删除的字符就把这个字符依次存入原字符串的前面位置 
            if(str[i]!=ch){
                str[j]=str[i];
                j++;  //指向下一个存储非删除字符的位置 
            }
            i++;  //指向下一个要判断的字符串位置 
        }
        //结尾加字符串结束空字符 
        str[j]='\0';
        
    }
    
    int main(void){
        
        char str[20];
        char ch ;
        char results[20];
        
        printf("Input a string:\n");
        getsQ(str);
        printf("Input a character:\n");
        getcharO(&ch);
        Delete(str,ch);
        printf("Results:%s\n",str);
        
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 1月14日
  • 已采纳回答 1月6日
  • 创建了问题 1月5日