yyten
发贴: 2
积分: 0
|
于 2004-09-29 15:11
//声明一个二维数组,给其赋值成为一个对角线为1,其他完素为0的n阶矩阵,并将其各元素显示出来. import java.io.*; public class marry{ public static void main(String [] agrs) { char k=0; int i=0; int j=0; System.out.print("Enter a int: "); try{ k=(char)System.in.read(); }catch(IOException e){}; int n=(int) k; int m[][]=new int[n][n]; for(i=0;i<n;i++) for(j=0;j<n;j++){ if(i==j||i+j==(n-1)) m[i][j]=1; else m[i][j]=0; } System.out.println(n+"*"+n+" 的阵列为 "); System.out.println("---------------"); for(i=0;i<n;i++){ System.out.print("\n"); for(j=0;j<n;j++) System.out.print(" "+m[i][j]); } } } 如果规定n的值,那程序可以正常输出,但如果像上面这样子,就会就成 输入的数值总被读为的ASCII值 这是什么原因,怎么更改. 我想,这应该是System.in.read()方法把接收到的数据都用Unicode码表示,我试过多种方法,但似乎都不能实现,请问有什么更好的办法吗?谢谢
|