这是高中作业。在我的第一个 for() 循环中,我根据用户输入构建了一个数组。但是,数组的第一个值被跳过并设置为 0.0
我已经彻底追踪了代码,但无济于事。
import java.util.Scanner;
import java.lang.Math;
public class TestProject {
public static void main(String[] args)
{
Scanner scan = new Scanner(System.in);
System.out.println("How long do you want the array?");
int length = scan.nextInt();
if(Math.abs(length) != length)
{
System.out.println("Not a valid length!");
}
else
{
double[] array = new double[length];
for(int i = 0; i < length-1; i++)
{
System.out.println("Enter a number");
array[i] = scan.nextDouble();
}
double[] finalarray = new double[array.length];
int finalarraycount = 1;
double flag = -1;
for(int x = 0; x<(array.length -1); x++)
{
if(array[x] > flag)
{
finalarray[finalarraycount] = array[x];
flag = array[x];
finalarraycount++;
}
}
System.out.print("Your array is {");
for(int y = 0; y<finalarray.length; y++)
{
System.out.print(finalarray[y]);
System.out.print(", ");
}
System.out.println("}");
}
}
}
我想将由可变长度确定的指定数量的值输入到数组中,然后按从小到大的顺序打印数组。相反,它会跳过索引[0],并将其设置为 0.0。
慕桂英4014372
烙印99
潇潇雨雨
相关分类