#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
int i,j,n,k,t,a[100];
srand((unsigned) time(NULL));
scanf("%d",&n);
k=n; //k:未定顺序的元素个数
for(i=0;i<n;i++)a[i]=i+1;
for(i=0;i<n-1;i++)
{
j=rand()%k; //产生0 ~ k-1的随机数j
t=a[j];a[j]=a[k-1];a[k-1]=t; //将a[j]与“最后一个元素”对换
k--;
}
for(i=0;i<n;i++)
printf("%d ",a[i]);
printf("\n");
system("pause");
return 0;
}
温馨提示:答案为网友推荐,仅供参考