Чтение библиотеки gmp руководство для функций случайных чисел, мы можем увидеть условие для вывода в соответствии с нашим запрошенным размером битов.
Модификация '14' в mpz_urandomb (rand_Num, r_state, 14) в соответствии с нашим количеством битов req дает случайное число такого количества бит (14-> 256).Но даже в цикле for они производят одинаковый набор случайных чисел.
Итак, измените предел (условие) 'i' в цикле на функцию rand (), которая зависит от функции srand (), которая, в свою очередь, принимает текущее системное время в качестве начального значения и в конечном итоге производит различные случайные числа.в рэнде ().Таким образом, каждый раз создаются разные итерации, и поэтому последнее число в последней итерации (с хорошей случайностью) в конечном итоге находится в переменной rand_Num.
#include<time.h>
// остальной код, как в руководстве //
srand(time(0));
for (i=0;i<rand();i++)
{mpz_urandomb(rand_Num,r_state,256);} // for 256 bits random number
enter code here