rand(7) 到rand(10)
说有一个rand()函数,等概率生成1-7的随机数.
利用这个函数,构造一个能生成1-10的随机数的函数; //意思大家都懂就好,没说清的就按照想象的走
我想只要输出的10个数概率相同就好,从宏观上看,这个函数的返回值每个都是1/10就好.
int get10() { srand((int)time(0)); int a,b,c=0; while(1) { a=rand(); //这个rand() 生成1-7 b=rand(); if(a==1) { switch(b) { case 1:c=1;break; case 2:c=2;break; case 3:c=3;break; case 4:c=4;break; case 5:c=5;break; } if(c!=0)break; } if(a==2) { switch(b) { case 1:c=6;break; case 2:c=7;break; case 3:c=8;break; case 4:c=9;break; case 5:c=10;break; } if(c!=0)break; } } return c; }