import java.util.Scanner;
class FooBizBaz{
public static void main(String[] args){
Scanner s = new Scanner(System.in);
int a = 0;
int b = 0;
for(int num = 1;num == 0;){
System.out.println("请输入一个书");
num = s.nextInt();
if(num>0)
a++;
if(num<0)
b++;
}
System.out.println("正数个数为" + a);
System.out.println("负数个数为" + b);
}
}
结果为0,0
为什么呢,大师们求解作者: huang_bing_hua 时间: 2016-2-27 12:35
for(int num = 1;num == 0;)表明当num ==0时,执行循环体;你num的初始化值是1,所以不执行循环体,执行循环以外的语句,只有最后的的输出语句了,而a,b值为0,0,所以结果是0,0作者: flyhui 时间: 2016-2-27 12:42
我并没看懂你这个程序的需求是什么作者: qq812392675 时间: 2016-2-27 12:53
import java.util.Scanner; class FooBizBaz{ public static void main(String[] args){ Scanner s = new Scanner(System.in); int a = 0; int b = 0; for(int num = 1;num != 0;){ System.out.println("请输入一个书"); num = s.nextInt(); if(num>0) a++; if(num<0) b++; } System.out.println("正数个数为" + a); System.out.println("负数个数为" + b); } }作者: 小笼包 时间: 2016-2-27 13:40
if的条件判断写错了,不能执行for循环, 作者: xiejun 时间: 2016-2-27 13:52
条件写错了 作者: cumtbao 时间: 2016-2-27 14:02
for循环中,初始条件 num=1,判断条件num==0,很显然不能满足判断条件,因而进不去for循环语句,只能执行输出语句。作者: qq812392675 时间: 2016-2-27 16:13
谢谢大家,我把for的 条件判断搞错了