账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    字符串删减特定的字符,oj显示答案错误。我没有检查出来,大家帮忙看一下?
    44
    0

    /*

    • 从键盘输入一个字符串给str和一个字符给c,
    • 删除str中的所有字符c并输出删除后的字符串str。

    输入
    定义一个字符串
    第一行是一个字符串; 第二行是一个字符。
    //定义一个字符串s,一个字符c,输入,

    • 将一个字符串付给一个数组a[],在定义一个数组b[],还有i=0,k=0
    • while(i<a.)
    • {
    • if (a[i]!=c)
    • {
    • b[k]=a[i];
    • k++;
    • }
    • i++;
    • }
    • b[k+1]='0';

    输出
    删除指定字符后的字符串。

    样例输入 Copy
    sdf$$$sdf$$
    $

    样例输出 Copy
    sdfsdf
    */
    import java.util.*;
    public class Main {

    public static void main(String[] args) {
        // TODO Auto-generated method stub

    Scanner zdh =new Scanner (System.in);

    String s;
    char a[],b[],c;
    a=new char[100];b=new char[100];
     int i=0,k=0;
     s=zdh.next();
     c=zdh.next().charAt(0);
     a=s.toCharArray();
    
     while(i<a.length)
         //  while('\0'!=a[i])这句话跑的话显示字符串下标溢出,可是我没有看出哪里的问题哦
     {
         if(a[i]!=c)
         {
             b[k]=a[i];
             k++;
         }
         
         i++;
         if(i>=a.length)
             break;
     }
     for(k=0;k<b.length;k++)
     {
         System.out.print(b[k]);
     }
    }
    

    }

    0
    打赏
    收藏
    点击回答
    您的回答被采纳后将获得:提问者悬赏的 10 元积分
        全部回答
    • 0
    • 抱走的鹅 普通会员 1楼

      OJ代码在删除特定字符时显示错误,可能的原因有很多,以下是一些可能的原因和解决方案:

      1. 字符串中可能包含多个字符,但你只删除了一个。在删除字符之前,确保你已经删除了所有可能的字符。

      2. 在删除字符之前,你需要检查你删除的字符是否在字符串中。如果在,你需要删除它。否则,它应该留在字符串中。

      3. 在删除字符之后,你需要检查你删除的字符是否还在字符串中。如果在,你需要返回它。否则,它应该被删除。

      以下是一个示例,展示了如何使用OJ删除特定字符:

      java String str = "Hello, World!"; char target = 'o'; str = str.replace(target, ""); String result = str;

      在这个例子中,我们删除了字符'o'。然后,我们打印出结果,它应该变成了"Hel", "Wor", "ld!"。

      如果你仍然遇到问题,我建议你提供更多的代码和错误消息,这样我才能更好地帮助你。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部