编写一个java程序,用户从键盘只能输入整数,程序输出这些整数的乘积,哪位帮我看看哪里错了,运行不了

请帮我指出哪里错了,该怎么改才能正常运行,谢谢了
我按照五楼的做了,可是为啥还是输不出来呢

你是C程序员过来的吧,明显的C风格,
Scanner牵扯到线程的,要放到循环里面去,整个程序以0结束。修改如下:
import java.util.Scanner;

public class Multi {
public static void main(String args[]) {

long mul = 1;
long a = 1;

while(a != 0){
Scanner reader = new Scanner(System.in);
a = reader.nextInt();
if(a == 0){
break;
}
mul = mul *a;
}

System.out.printf("the answer is " +mul);
}
}
---------------
1
2
3
5
0
the answer is
30追问

恩,是啊,我先学的C语言,不过我按照这个程序保存,但最后运行的时候,我输入0然后回车,怎么没结果嘞?

追答

你全部copy我的代码过去肯定有输出的,其实这个程序设计得不是很好,因为0也是整数。

追问

我按照你的copy过去了,可是最后输入0的时候,没有上面得到的结果啊

追答

有没有重新编译啊你,如果是全部COPY过重新编译的话,照上面的输入的话。肯定是哪个结果

修改了,让0也可以参与整数乘法运算,程序以用户输入大写EOF结束
import java.util.Scanner;

public class Test {

public static void main(String[] args) {

long mul = 1;
long a = 1;

while (a != 0) {
System.out.println("请输入整数,结束请输入EOF");
Scanner reader = new Scanner(System.in);
String str = reader.next();

if (str.equals("EOF")) {
break;
}

mul = mul * Integer.parseInt(str);
}

System.out.printf("the answer is " + mul);

}
}
-------------
请输入整数,结束请输入EOF
12
请输入整数,结束请输入EOF
3
请输入整数,结束请输入EOF
5
请输入整数,结束请输入EOF
4
请输入整数,结束请输入EOF
EOF
the answer is 720

温馨提示:内容为网友见解,仅供参考
第1个回答  2011-03-02
还是没有代码,你重新复制下代码吧
第2个回答  2011-03-02
不会吧,代码也是文字,不让写?追问

系统不行,我弄在了第一个网友的追问那里了,谢谢大家帮我看看

第3个回答  2011-03-02
看不见代码。。。。。。。。。。
第4个回答  2011-03-02
你的代码都不在,怎么改啊???追问

import java.util.*;
public class Multi {
public static void main (String args[]) {
Scanner reader=new Scanner(System.in);
long mul=1;
long a=0;
while(reader.hasNextInt()){
mul = mul*a;
a=reader.nextInt();
}
System.out.printf("%d the answer is %f\n",+mul);
}
}

编写一个java程序,用户从键盘只能输入整数,程序输出这些整数的乘积
import java.util.Scanner;public class ee { public static void main(String[] args) { Scanner scanner=new Scanner(System.in);int total=1;int a=0;while(a>-1){ a=scanner.nextInt();total=total*a;System.out.println("总数"+total);} } } ...

编写一个Java应用程序,用户从键盘只能输入整数,程序输出这些整数的乘积...
package com.xiajunyu.demo1;import java.util.Scanner;\/** * 编写一个Java应用程序,用户从键盘只能输入整数,程序输出这些整数的乘积。要求: 定义具有3个元素的整型数组; * 利用Scanner对象获得从键盘输入的数据,赋值给数组元素; 求数组元素的乘积 *\/public class Test {public static void main(Str...

...程序输出这些整数的乘积,以下是我编写的java程序
import java.math.*;import java.util.*;final class MulDemo { public static void main(String... args) { Scanner scaner = new Scanner(System.in); System.out.print("输入非零整数(0表示结束输入):"); BigDecimal bigDec = new BigDecimal(1); int i; while((i =...

求~编写一个完整的java递归程序,从键盘输入数字n!,程序自用计算n!,并...
import java.io.IOException;import java.io.InputStream;public class Digui { \/ param args \/ public static void main(String[] args) { byte[] b = new byte[32];while (true) { try { System.out.println("请输入正整数,获取其阶乘,输入over结束");System.in.read(b);String res =...

用Java编写一个完整的递归程序,实现如下功能:从键盘输入数字n,程序自动...
public static void main(String[] args){ System.out.println("输入n,按回车:"); Scanner s = new Scanner(System.in); Integer n = Integer.parseInt(s.next()); Integer re = factorial(1, n); System.out.println(re); } public static Integer factorial(Integer...

用java编译程序从键盘上任意输入一个整数 然后输出该数的平方值.
import java.util.Scanner;public class test { public static void main(String[] args) { Scanner s=new Scanner(System.in);System.out.print("输入整数:");int i=s.nextInt();System.out.println(Math.pow(i,2));} } 你需要的是这样的吧 ...

用java编写一个程序,实现键盘上输入一个整数n。
import java.util.Scanner;public class InputN { public static void main(String[] args) { Scanner scan = new Scanner(System.in);System.out.print("请输入一个数:");int n = scan.nextInt();int sum = 0;if (n <= 1) { System.out.println("整数n应该为大于1的正整数");} ...

编写一个程序,从键盘输入3个数,打印出这3个数的和、平均值、乘积、最...
java代码 import java.util.Scanner;public class Main { \/ param args \/ public static void main(String[] args) { Scanner input = new Scanner(System.in);int readint[] = new int[3];readint[0] = input.nextInt();readint[1] = input.nextInt();readint[2] = input.nextInt()...

编写java循环程序,从键盘输入一个数,输出这个数是个几位数,输出各位数...
import java.util.Scanner;public class TestDemo { public static void main(String[] args) { Scanner sc = new Scanner(System.in);\/\/键盘输入数字 System.out.println("请输入一个数");int a = sc.nextInt();int temp=10;String str = String.valueOf(a); \/\/将数字转换成字符串 int ...

编写一个java应用程序,用户从键盘输入一个整数,判断这个数是几位数...
输入一个数字:123321 您输入的是:123321 共 6 个字符。123321 是全数字。123321 是一个6位的整数。123321 是一个回文串。--- 输入一个数字:abccba 您输入的是:abccba 共 6 个字符。abccba 不是全数字。abccba 不是整数。abccba 是一个回文串。--- 输入一个数字:123456789 您输入的是:...

相似回答