求大家帮忙看看到底哪里出错了 一直报错,心态都快崩了

import java.util.*;
public class Main{
public static void main(String[]args){
Scanner sc=new Scanner(System.in);
while(true){
int n=sc.nextInt();
int[]arr=new int[n];
int index=0;
for(int i=0;i<n;i++){
int num=sc.nextInt();
int flag=0;
for(int k=0;k<i;k++){
if(arr[k]==num){
flag=1;
}
}
if(flag==0){
arr[index]=num;
index++;
}
}
int[] last=new int[index];
for(int j=0;j<index;j++){
last[j]=arr[j];
}
Arrays.sort(last);
for(int t=0;t<index;t++){
System.out.println(last[t]);
}
}
}
}
全部评论
是答案不对还是程序抛异常呢
点赞 回复 分享
发布于 2019-11-24 23:10
为啥要用死循环呢,可能会导致换行符之类的不一致吧,再一个,第二层循环是不是应该用k<=i,而且再严谨一点,数组默认初始化为0,如果输入的那个数字是0是不是会导致flag无辜被置为true。
点赞 回复 分享
发布于 2019-11-24 23:10
 while(sc.hasNext()){ 不要while(true){
点赞 回复 分享
发布于 2019-11-24 23:16

相关推荐

09-05 02:50
已编辑
南京理工大学 Java
大拿老师:你只要把实验室项目放第一个,就应该有面试了 但是面试通过率应该不高 现在的问题很明确,就是你的简历主项目是一个烂大街的,而你的学历在大厂又是最差的 校招简历上只有这两个东西是不一样的,一个是学校,一个是主项目 你这两个目前都是最差的,大厂又是在笔试后,面试官谁简历的时候肯定过不了
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务