回车有时可以有时不可以结束输入,怎么回事呀
public static void p44()
{
Scanner sr=new Scanner(System.in);
int b=0,c=0,d=0;
for(;;)
{
Double a= sr.nextDouble();
if(a<=0)
{
break;
}
if(a>=85)
{
b++;
}
if(a>=60&&a<85)
{
c++;
}
if(a<60)
{
d++;
}
}
System.out.println(">=85:"+b);
System.out.println("60-84:"+c);
System.out.println("<60:"+d);
}
根据你贴出的第9-11行代码,输入小于等于0才能结束for的循环,所以如果输入的数大于0就会一直获取输入,如果输入了小于等于0的数,循环结束然后打印结果 ,测试代码如下:
import java.util.Scanner;
public class ScoreCountTest {
public static void p44()
{
Scanner sr=new Scanner(System.in);
int b=0,c=0,d=0;
for(;;)
{
Double a= sr.nextDouble();
if(a<=0)
{
break;
}
if(a>=85)
{
b++;
}
if(a>=60&&a<85)
{
c++;
}
if(a<60)
{
d++;
}
}
System.out.println(">=85:"+b);
System.out.println("60-84:"+c);
System.out.println("<60:"+d);
}
public static void main(String[] args) {
// TODO Auto-generated method stub
p44();
}
}
回车并不会结束运行,nextDouble是读取你输入的double值,其他的都不会读取,你的代码里是读到0才会结束