求助大佬
查看原帖
求助大佬
555533
MOONL楼主2021/9/5 22:29

求助大佬呀,测试数据过了 但是这个 20 20 40 321 677 40 20 89 301 407 515 40 321 67 40 20 89 301 407 15 499

这个输出了-18 为什么呀??

#include<stdio.h>
int main()
{
    int n;
    int i,j;
    int count = 0;
    int num = 0;
    int temp;
    int nums[105];
    
    scanf("%d",&n);
    nums[n];
    for(i = 0;i < n;i++)
    {
        scanf("%d",&nums[i]);
    }
    
    for(i = 0;i < n;i++)
    {
        for(j = num;j < n;j++)
        {
        	if(nums[i] == nums[j] && i != j )
             {
             	nums[j] = 0;
				count++;
			 }
        }
        num++;
        
    }
    
    for(i = 0;i < n-1;i++)
    {
        for(j = 0;j < n-i-1;j++)
        {
            if(nums[j] >= nums[j+1])
            {
                temp = nums[j];
                nums[j] = nums[j+1];
                nums[j+1] = temp;
            }
        }
    }
    
    printf("%d\n",n-count+1);
    for(i = count-1;i < n;i++)
    {
        printf("%d ",nums[i]);
    }    
    return 0;
}
2021/9/5 22:29
加载中...