m0_62537405 2021-11-14 11:56 采纳率: 75%
浏览 27
已结题

这个哪里错了,不太明白字符串如何输入到函数里

img

  • 写回答

2条回答 默认 最新

  • a5156520 2021-11-14 12:44
    关注

    一个简单的实现:

    #include <stdio.h>
    
    int main(void){
        
        char* cut(char x[] ,int y,char z);
        
        char a[40],b, * c;
        
        int d = 40;
        
        gets(a);
        printf("a=%s\n",a);
            
        b = getchar();
        printf("b=%c\n",b);
        
        c = cut(a,d,b);
        
        printf("after delete '%c', str=%s\n",b,c);
        
        return 0;
        
        
    
        
    }
    
    char * cut(char x[] ,int y, char z){
        int i ;
        char temp [y];
        int j = 0;
        
        for(i=0;i<y;i++){
            temp[i] = '\0';
        }
        
        for(i=0;x[i]!='\0';i++){
    //        printf("x[%d]=%c,z=%c\n",i,x[i],z);
            if(x[i]!=z){
                temp[j] = x[i];    
    //            printf("temp[%d]=%c\n",j,temp[j]);    
                j++;
            }
                    
        }
        temp[j] = '\0';
        printf("temp=%s\n",temp);
        
        for(i=0;temp[i]!='\0';i++){
    //        printf("exchange , temp[%d]=%c\n",i,temp[i]);
            if(i==y-1&&temp[i]=='\0')
                x[i] = '\0';
            else
                x[i] = temp[i];
        }
        if(i<y){
            x[i] = '\0';
        }
        
    //    printf("afeter exchange x=%s\n",x);
        
        return x;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 12月10日
  • 已采纳回答 12月2日
  • 创建了问题 11月14日

悬赏问题

  • ¥15 angular有偿编写,
  • ¥15 VB.NET使用保存对话框保存图片?
  • ¥15 centos7系统下abinit安装时make出错
  • ¥15 hbuildex运行微信小程序报错
  • ¥15 关于#python#的问题:我知道这个问题对你们来说肯定so easy
  • ¥15 wpf datagrid如何实现多层表头
  • ¥15 为啥画版图在Run DRC会出现Connect Error?可我Calibre的hostname和计算机的hostname已经设置成一样的了。
  • ¥20 网站后台使用极速模式非常的卡
  • ¥20 Keil uVision5创建project没反应
  • ¥15 mmseqs内存报错