运行感觉是for循环的问题,但是我感觉没问题呀,求指点

来源:4-15 编程练习

慕桂英3245725

2019-02-20 09:55

int num=999;

int count=9;

for(int i=count;num<i^10;count--);

System.out.print("它是个"+count+"位的数");


写回答 关注

4回答

  • marine_online
    2019-02-20 10:13:29
    已采纳

    i的初始值为9,num<i*10,num<90么?,num的值为999呀,程序本身不同呢

    慕桂英324...

    这是要用10平方的,然后Java没平方这一算法。。。。。

    2019-02-21 20:21:16

    共 1 条回复 >

  • 慕桂英3245725
    2019-02-21 20:01:02

    好吧,Java中还没平方这么一说。。。

  • 慕无忌7406412
    2019-02-20 11:21:20

    首先,我们不看你的逻辑问题,只说语法问题。

    你定义的“int i”完全是多余的,中文和英文的分号也没整清楚,for循环没有循环体,只有判断条件。

    再看逻辑问题,count这个变量你定义来究竟是干什么的呢?你那四行代码可以这样写:

    int num=999;

    int count=0;

    for(;num>0;num/=10)

    count++;

    System.out.print("它是个"+count+"位的数");


    慕桂英324...

    定义I我想着顺便保持原来的num值不变,那就只能动用count,但是count在比较的一步时候会被乘以十,改变原先的大小所以,我用I乘以十进行比较了

    2019-02-21 19:27:21

    共 1 条回复 >

  • 慕移动6307043
    2019-02-20 10:12:02

    你没说清楚对I进行递减还是对count进行递减。

    慕桂英324...

    count是位数,如果直接用count进行比较,会改变count的值,所以我用I进行比较,count是位数,递减能直接解决位数小于十位数的问题,

    2019-02-21 19:50:02

    共 2 条回复 >

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

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

1165172 学习 · 17581 问题

查看课程

相似问题