无结果,问题在哪里?

来源:4-15 编程练习

景诺

2016-07-01 16:49

public class Hello1 {
    public static void main(String[] args) {
			int num = 999;
			int count = 0;
			int a = num/10;
			while(a > 0 && a < 10){
			if(num>=1){
			num=num/10;
			count++;
			}
			System.out.println("它是一位"+count+"位数!");
			}
	}
}


写回答 关注

2回答

  • 好好学习_中
    2016-07-01 17:14:45
    已采纳

     int a = num/10; 即a=999/10 =99,不在你这个范围内。可以参考其他人的编程思路

    景诺

    非常感谢!

    2016-07-01 17:50:09

    共 1 条回复 >

  • 慕粉3574461
    2016-07-01 17:50:29
    1. num = 999,然后 int a = num/10,所以a=99,while(a > 0 && a < 10)进不去

    2. if循环if(num>=1)只是一个判断的要这样写用while

      所以改正:

    3. public class Hello1 {

    4.     public static void main(String[] args) {

    5.             int num = 999;

    6.             int count = 0;

    7.             int a = num/10;

    8.             while(a > 0 && a < 100000){//这个范围扩大了,但是变成了true;这里如果用if下面就不需要break

    9.             while(num>=1){//if变break

    10.             num=num/10;

    11.             count++;

    12.             }

    13.             System.out.println("它是一位"+count+"位数!");

    14.            break;//所以有个break

    15.             }

    16.     }

    17. }

    景诺

    Thank you!

    2016-07-02 00:27:33

    共 1 条回复 >

Java入门第一季(IDEA工具)升级版

0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始

1165168 学习 · 17581 问题

查看课程

相似问题