gpt4 book ai didi

java - java打印不同的数字

转载 作者:行者123 更新时间:2023-12-01 11:55:35 24 4
gpt4 key购买 nike

我在这段代码上遇到了困难。代码完成了,但是输出错误。我的代码打印输入十个数字:1 2 3 5 6 6 8 7 4 1它应该打印不同的数字是:1 2 3 5 6 8 7 4但事实并非如此。它打印:10 10 10 10 10 7我该如何修复它?

Here is my code:

import java.util.*;

public class homework1 {
public static void main(String[] args){
// input from user
Scanner input = new Scanner(System.in);
int [] numbers = new int[10];
boolean[] distinct = new boolean[10];
System.out.println("Enter ten numbers");
for (int i=0; i<numbers.length; i++){
System.out.println("Number " + (i + 1) +": ");
numbers [i] = input.nextInt();
distinct[i] = true;
for(int j = 0;j<10; j++){
if(numbers[i] == numbers[j] && i != j) {
distinct[i] = false;
}
}
}

int count=0;
for(int j = 0;j<10; j++){
if (distinct[j]){
numbers[count]=distinct.length;
count++;
}
}
System.out.println("The number of distinct number is: "+numbers[count]);
System.out.println("The distinct numbers are: ");
for(int i= 0; i < 10; i++) {
if(distinct[i]) {
System.out.print(numbers[i] + " ");
}
}
System.out.println();
}
}

最佳答案

这一行:

numbers[count]=distinct.length;

将输出设置为数组的长度(在本例中硬编码为 10。尝试:

int count=0;
for(int j = 0;j<10; j++){
if (distinct[j]){
numbers[count]=numbers[j];
count++;
}
}

这会将您的输出设置为不同的数字。

插头:查看Code Review

关于java - java打印不同的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28469002/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com