cc++ gmp库大整数运算

    xiaoxiao2022-06-27  178

    计算10000!

    #include <gmp.h> int main() { mpz_t num ; mpz_t z_i , z_s , z_o ; mpz_init_set_str(z_i , "1" , 10) ; mpz_init_set_str(z_s , "1" , 10) ; mpz_init_set_str(z_o , "1" , 10) ; // 使用字符串来初始化大整数,10表示进制 int i = 0; for (i = 0; i < 10000; i++) { mpz_mul(z_s , z_s , z_i); // : z_s = z_s*z_i mpz_add(z_i , z_i , z_o); } gmp_printf("%Zd\n",z_s); mpz_clear(z_i) ; mpz_clear(z_s) ; mpz_clear(z_o) ; // 释放大整数占用空间 return 0; }

    编译: gcc -lgmp demo.c


    最新回复(0)