用C语言编一个程序,需要10个1-81之间的不能相同的随机数,注意随机数不能相同,怎么弄

来源:百度知道 编辑:UC知道 时间:2024/06/04 19:09:50
高手赐教
感激不尽
一楼的那种方法还是有相同的随机数
一楼的那种方法还是有相同的随机数

你好!本人是菜鸟,希望帮到你~
刚才有点小错误,现在可以了..你可以修改下看20个数有无重复,我试过OK!
#include<time.h>
main()
{int i,j,z[10];
for(i=0;i<10;i++)
z[i]=rand()%81+1;
for(i=0;i<10;i++) /*利用一个二重循环使一维数组中所有元素都不同*/
{for(j=10;j<i;j--) /*我这里用的是冒泡法,你可以用下选择法弄哦^.^*/
if(z[i]==z[j])
z[j]=rand()%81+1;
}
printf("\narray[10]={");
for(i=0;i<10;i++)
{if(i<9)printf("%d,",z[i]);
else printf("%d}",z[i]);
}
}

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int main()
{
srand(time(NULL));
int i;
int a[10];

for(i=0;i<10;i++)
{
a[i]=rand()%81+1;
printf("%d ",a[i]);
}
return 0;
}

#include<stdio.h>
main()
{
int a[],i[],j;/* a保存随机数数组,i记录是否重复,j循环变量 */
for(j=1;j<=81;j++)
i[j] = 0;
for(j=0;j<10;j++)
{