#include
#include
#include
int main()
{
int m , N , i , k , k1,k2=0 , j , temp,flag;
int *p;
int array[1001];
int array1[1001];
//p=array;
//************************************************这个是把数组随机出来
srand(time(NULL));
scanf("%d",&N);
for(i = 0 ;i < N; i++ )
{
array[i] = rand()%1000+1;
}
/*for(i = 0; i< N;i++)
{
printf("%d ",array[i]);
}
*/
k= N;
//****************************************************
//***********************************************删掉多余的数字
for(i=0;i<N;i++)
{
for(j=i+1;j<N;j++)
{
if(array[i]==array[j])
{
flag=0;break;
}
}
if(flag==1)
{
array1[k2]=array[i];
//printf("%d ",array[k]);
k2++;
}
flag=1;
}
//*************************************************
//*************************************************这个使用来排序的
for( i = 0; i < k2;i++)
{
for( j = 0; j < k2; j++)
{
if(array1[i]<array1[j])
{
temp = array1[i];
array1[i] = array1[j];
array1[j] = temp;
}
}
}
for( i = 0; i < k2-1 ; i++)
{
printf("%d ",array1[i]);
}
printf("%d",array1[k2-1]);
return 0;
}
#include <stdio.h>
int main()
{
int n,i,j,p[1001];
scanf("%d",&n);
for(i = 0; i < n; ++i)
scanf("%d",&p[i]);
for(i = 0; i < n; ++i)
{
for(j = i + 1; j < n; ++j)
{
if(p[i] == p[j])
p[j] = 0;
}
}
for(i = 0; i < n; ++i)
{
int k = i;
for(j = i+1; j < n; j++)
if(p[k] > p[j])
k = j;
if(k != i)
{
int t = p[i];
p[i] = p[k];
p[k] = t;
}
}
int sign = 0;
for(i = 0; i < n; ++i)
if(p[i] != 0)
sign++;
printf("%d\n",sign);
for(i = 0; i < n; ++i)
if(p[i] != 0)
printf("%d ",p[i]);
}
#include <stdio.h>
int main()
{int i,j,n,sum=0,x[1001]={0};
scanf("%d",&n);
for (i=1;i<=n;i++)
{scanf("%d",&j);
if (x[j]==0) sum++;
x[j]=1;
}
printf("%d\n",sum);
for (i=1;i<=1000;i++)
if (x[i]==1) printf("%d ",i);
return 0;
}
你的代码放在其他地方没有问题,但这是ACM题,你的输入显然不符合ACM/ICPC题目的格式。
题目已经给出输入样例,也就是说随机数不是你自己生成的,而是用户按那个样例输入的。
可参考以下代码,以C++提交,有任何问题可以提出来。
#include<stdio.h>
#include<stdlib.h>
#include<algorithm>
using namespace std;
int main()
{
int n,i,j,k,sign,a[1100],b[1100];
while(scanf("%d",&n)!=EOF)
{
for(i=0;i<n;i++)
scanf("%d",&a[i]);
k=0;
for(i=0;i<n;i++)
{
sign=1;
for(j=i+1;j<n;j++)
{
if(a[i]==a[j])
{
sign=0;
break;
}
}
if(sign==1)
{
b[k++]=a[i];
}
}
sort(b,b+k);
printf("%d\n",k);
printf("%d",b[0]);
for(i=1;i<k;i++)
printf(" %d",b[i]);
printf("\n");
}
return 0;
}