ningchengning 2013-11-05 13:32 采纳率: 100%
浏览 2174
已采纳

用while和for分别写一段代码时出现了差别,不知道哪里错了。

要求是1-100之间的数,输出能被5整除的数,3个数换一行。
用FOR写没问题,用WHILE写输出结果第一行出现问题
int o = 1;
while(o<=100){

if(o%5==0){

System.out.print(o+"\t");
}
o++;
if(o%(5*3)==0){
System.out.println();
}
}
输出结果:
5 10 (注:这里不知道为什么10就换行了)
15 20 25

30 35 40

45 50 55...
下面是用FOR写的:
for(int j = 1;j<=100;j++){
if(j%5==0){
System.out.print(j+"\t");
}
if(j%(5*3)==0){
System.out.println();
}
}
输出结果:
5 10 15 (注:这里是正常的)
20 25 30

35 40 45

50 55 60...

  • 写回答

3条回答

  • shimucheng 2013-11-05 15:01
    关注

    o++;
    if(o%(5*3)==0){
    System.out.println();
    }

    把o++放到循环最后就好了
    你这样写的话不是在10的时候输出换行,而是在14的时候输出的换行。前面的代码执行的o=14,无输出,然后o++;,o变成15,就输出换行了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 matlab实现基于主成分变换的图像融合。
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料
  • ¥15 使用R语言marginaleffects包进行边际效应图绘制
  • ¥20 usb设备兼容性问题
  • ¥15 错误(10048): “调用exui内部功能”库命令的参数“参数4”不能接受空数据。怎么解决啊