c语言,生成3个5以内的不重复随机数,程序怎么改变成不重复

2024-11-01 04:24:51
推荐回答(2个)
回答(1):

#include 
#include "stdlib.h"
#include "time.h"
int main(int argc,char *argv[]){
    int a[6]={0,1,2,3,4,5},x,i,j,k;
    srand((unsigned)time(NULL));
    for(k=6,i=0;i<3;i++){
        printf("%d ",a[x=rand()%k--]);
        j=a[k],a[k]=a[x],a[x]=j;
    }
    printf("\n");
    return 0;
}

回答(2):

加一个for循环,来判定新生成的数是否在数组中已存在。