大佬们,想问一下,为什么我的输入输出都没问题,但是case通过一直是0;就是将输入的String放进char数组里面,然后从最后一位开始循环比较跟前面的值的大小,遇到第一个比后面的值小的,就换位,但是一直通不过,不知道为什么。 package interview; import java.util.Scanner; public class Yy {    public static void main(String[] args) {         Scanner sc = new Scanner(System.in);          String st = new String();          st = sc.next();         char[] num = new char[st.length()/2 + 1];         char bigger;         for(int i = 0,j = 0;i < st.length()/2 + 1;i ++) {          num[i] = st.charAt(j);          j +=2;         }        int mark = 0;         for(int j = st.length()/2;j >= 0;j --) {         bigger = num[j];         for(int i = j;i >= 0 ;i --) {          if(num[i] < bigger) {          num[j] = num[i];          num[i] = bigger;          mark = 1;          break;          }         }         if(mark == 1) break;         }                  if(mark == 0) {          for(int i = st.length()/2;i >= 0;i --) {          System.out.print(num[i]);          if(i != 0) System.out.print(",");          }         }         else{           for(int i = 0;i < st.length()/2 + 1;i ++) {          System.out.print(num[i]);                   if(i != st.length()/2) System.out.print(",");                   }         }     } }
点赞 6

相关推荐

04-19 11:59
门头沟学院 Java
卷不动辣24314:挂,看来不该投这个部门的
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务