java中关于从键盘输入的问题,拜托大家解答!
java中“从键盘输入”应该怎么样实现?比如:
import java.util.Scanner;
class text2{
public static void main(String args[]){
int [][]array=new int[10][10];//定义一个10行10列的方阵
Scanner sc=new Scanner(System.in);
int i,j;//i、j为定义的循环变量
int sum=0;//sum为求和变量
for(i=1;i<=10;i++)
for(j=1;j<=10;j++)
array[i][j]=sc.nextInt();//输入一百个数,每两个数之间用空格隔开
for(i=1;i<=10;i++)
sum+=array[i][i]+array[i][11-i];
System.out.println("方阵对角上的元素和为:"+sum);
}
}
红色地方是一种数组的输入方式,但是我想能把它做成每1行只输10个数,然后根据提示输10行,应该怎么样做?(在dos中,给你提示“请输入第一行,然后你输入10个数”,然后按enter键,会提示“请输入第二行,再输入10个数。。。。。。以此类推”。。。。。
------解决方案--------------------
在控制台无所谓输入格式的
Scanner每次只能读入一个基本类型或者一行,
你输入20个整数,回车,那就读入20个到nextInt(),然后在下一个nextInt()处等待
------解决方案--------------------要说的是 申明数组时 申明行数就可以了 int [][]array=new int[10][];//申明行数就OK Scanner每次只能读入一个基本类型或者一行,
Java code
import java.util.Scanner;
public class Test2{
public static void main(String args[]){
int [][]array=new int[10][];//申明行数就OK
Scanner sc=new Scanner(System.in);
int i,j;//i、j为定义的循环变量
int sum=0;//sum为求和变量
for(i=0;i<10;i++)
for(j=0;j<10;j++)
{
array[i][j]=sc.nextInt();//输入一百个数,每两个数之间用空格隔开
if(j==9)
System.out.println(" ");
}
for(i=0;i<10;i++)
sum+=array[i][i]+array[i][10-i];
System.out.println("方阵对角上的元素和为:"+sum);
}
}
------解决方案--------------------