投入就放过 发表于 2022-3-23 15:39:46

c语言 生成随机数问题

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

int func();

int func()
{
        int a;
        time_t t;
       
        srand((unsigned)time(&t));                // 我照着小甲鱼老师的代码写的,为什么加了srand之后就是固定的数呢,不加反而是随机数
        a=rand()%3;
       
        return a;
}

int main(void)
{
        int win1,win2,pin;
        win1=win2=pin=0;
        int a,b1;
        char max;
        int C,J,B,c,j,b;
        C=J=B=c=j=b=0;
        int num,temp;
       
        scanf("%d",&num);
        temp=num;
        while(temp--)
        {
                a=func();
                b1=func()*3;
               
                if(a+b1==7 || a+b1==11 || a+b1==6)
                {
                        win1++;
                        if(a==1) C++;
                        else if(a==2) J++;
                        else B++;                       
                }
                else if(a+b1==10 || a+b1==9 || a+b1==5)
                {
                        win2++;
                        if(b1==3) c++;
                        else if(b1==6) j++;
                        else b++;
                }
                else
                {
                        pin++;
                }
                printf("a=%d b1=%d\n",a,b1);
                printf("C=%d J=%d B=%d pin=%d win1=%d win2=%d\n",C,J,B,pin,win1,win2);
        }
       
        printf("%d %d %d\n",win1,pin,num-win1-pin);
        printf("%d %d %d\n",win2,pin,num-win2-pin);
       

       
        return 0;       
}

jhq999 发表于 2022-3-23 15:50:48


        srand((unsigned)time(0));
      while(temp--)
      {
                a=rand()%3;//感觉子函数没有存在的意义
                b1=rand()%3;

投入就放过 发表于 2022-3-23 15:57:36

jhq999 发表于 2022-3-23 15:50


我删了点东西,代码多看着烦
页: [1]
查看完整版本: c语言 生成随机数问题