求助大佬呀,测试数据过了 但是这个 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;
}