JAVA从键盘中输入20个整数将奇数和偶数存入不同的两个数组中 计算这两个数组中所有数据之和
关注:141 答案:4 手机版
解决时间 2021-01-16 16:22
提问者假正经
2021-01-16 13:12
我的代码是
package study;
import java.util.*;
public class HelloWorld {
public static void main(String[] args)
{
Scanner input=new Scanner(System.in);
System.out.println("输入20个整数");
int a[];
a=new int[20];
int b[];
b=new int[20];
for(int i=0;i<20;i++)
{
int x=input.nextInt();
if(x%2==0)
{
x=a[i];
}else
{
x=b[i];
}
System.out.println("加起来一共"+(a[20]+b[20]));
}
}
}
但是为啥 我输入了20个数字 得出来的是
输入20个整数
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 20
at study.HelloWorld.main(HelloWorld.java:25)
。。 求高手解答 我究竟错哪了
。。。20改 19了。。。。但是为什么我最后答案是0。。
最佳答案
二级知识专家你可以浪但我不會等
2021-01-16 14:13
System.out.println("加起来一共"+(a[20]+b[20]));
你数组总共是20个元素,最多只能是a[19]
20肯定会显示数组超出
全部回答
1楼怼你笑纯属礼貌
2021-01-16 17:22
System.out.println("加起来一共"+(a[20]+b[20]));
应该是这句报错了,a[20] b[20]的数组越界了,应该是a[19] b[19]
2楼哭嗻説侢見
2021-01-16 16:59
1. 数组下标是以0开始的,,只有a[19],没有a[20]!
2. 程序写出来的不是题目要求的。还不如用个list存储,然后把list转array
3楼指间的落寞
2021-01-16 15:47
i++){
if(arrnew%2==0){//代表是偶数
arr1[i]=arrnew[i]arr1 奇数数组 arr2 偶数数组 分别赋予长度 20 因为最多20个 不会越界的 然后 arrnew 是存储用户输入的数
for(int i =0;i<20;/否则就是奇数咯
arr2[i]=arrnew[i];
}else{/
我要举报
如以上信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
推荐资讯
大家都在看