这个是因为你输入的值如果是8的时候 !8的ascii码刚好是56,56*56 就是3136!9的ascii码是57,57*57就是3249!
代码是取的你输入值的ascii码来计算的!

解决方案 »

  1.   

    你需要使用   
     InputStreamReader  h= new  InsrtItoreader(System.in);
    BufferReader m =new BufferReader(h);希望能对你有所帮助
      

  2.   

    其实最简单不用流 可以这样写public class mytest{   public static void main(String args[]){//args[]就可以接收你从键盘输入的东西,但是你输入任何都String类型的
           for(int i=0 ;i<=args.length;i++){
                 Integer a = Integer.parseInt(args[i]);转换一下!  
                 然后下面就可以了
         }}}
    楼上用流也行 , 初学者这个好理解。