已知有个rand7()的函数,返回1到7随机自然数,让利用这个rand7()构造rand10()
随机1~10
#include<stdlib.h>
#include<stdio.h>
int rand7()
{
return rand()%7+1;
}
int rand10()
{
int a71,a72,a10;
do{
a71=rand7()-1;
a72=rand7()-1;
a10=a71*7+a72;
}while(a10>=40);
return (a71*7+a72)/4+1;
}
int main()
{
int a,i;
for(i=0;i<16;i++)
{
a=rand10();
printf("%d\n",a);
}
return 0;
}