给定能随机生成整数 1 到 5 的函数,写出能随机生成整数 1 到 7 的函数。

int rand7() {
    int i = rand5() - 1; // 随机生成0~4的数
    int j = rand5() - 1; // 随机生成0~4的数
    int num = 5 * i + j; // 随机生成0~24的数
    if(num > 20)
         return rand7();
    else
         return num % 7 + 1;

int rand7()
{
    int n=25;
    while(n>21){
        n=5*(rand5()-1)+rand5();
    }
    return (n%7)+1;
}

你可能感兴趣的:(校招笔试)