我是Java的初学者。我写了那段代码,在CMD上编译它。
public class AA {
public static void main (String[] args){
int line=Integer.parseInt(args[0]);
int i=0;
while(i<line){
double first_input = StdIn.readDouble();
double second_input = StdIn.readDouble();
double third_input = StdIn.readDouble();
double average = first_input * 0.2 + second_input * 0.4 + third_input * 0.4;
line-=1
StdOut.println(average+"is..");
}
}
}
虽然我正在寻找这个:
2 15 22
2 5 77
15,2 is...
33,2 is...
我得到的输出就是这样:
2 15 22
15,2 is...
2 5 77
33,2 is...
我尝试了很多方法,但我没有解决方法。是否有一些我看不到的技巧?
答案 0 :(得分:1)
根据我的理解,我会将计算值添加到变量中,然后输入所有值后,显示存储的值。
当然,有多种方法可以实现这一目标,但也许一个简单的方法就是使用StringBuffer。
public static void main( String[] args )
{
int line = Integer.parseInt( args[ 0 ] );
int i = 0;
StringBuffer sb = new StringBuffer();
while ( i < line )
{
double first_input = StdIn.readDouble();
double second_input = StdIn.readDouble();
double third_input = StdIn.readDouble();
double average = first_input * 0.2 + second_input * 0.4 + third_input * 0.4;
sb.append( average );
sb.append( " is..\n" );
line -= 1;
}
StdOut.println( sb.toString() );
}
仅供参考,似乎OP正在使用库http://introcs.cs.princeton.edu/java/stdlib/并且它被设计为采用一个参数,即运行的迭代次数。