c语言大数存储

您所在的位置:网站首页 为什么13的阶乘c语言出错 c语言大数存储

c语言大数存储

2024-06-04 03:57| 来源: 网络整理| 查看: 265

python的bignum数据类型可作为大数据的存储。众所周知,c语言最大的基础数据类型long long,所占字节数为:8,所能表示的数据范为:-9223372036854775808~+9223372036854775807,差不多1800亿亿。如果大于这个将出现数据存储越界,从而可能出现错误。所以依据汉语数据表达习惯,应采用数组存储每四位上的数据。

100以内的阶乘 void jieCheng(int N) { int a[64]; int n, i, c, p; int len = 1; a[0] = 1; //计算 for (n=N; n>1; n--) { c=0; for (i=0; i0) { len++; } } //打印 printf("%d,",a[len-1]); for (i=len-2; i>=0; i--) { i==0 ? printf("%04d",a[i]) : printf("%04d,",a[i]); } printf("\n"); } 10000以内的阶乘

10,0000!大概有50,0000位数,计算基本上达到目前个人电脑的极限,我在MacBook Pro (Retina, 15-inch, Mid 2015)环境下Time to do 100000! is 60.233349 seconds。

void jieCheng(int N) { long a[N];//100000以下的阶乘 long n, i, c, p; int len = 1; a[0] = 1; //计算 for (n=N; n>1; n--) { c=0; for (i=0; i0) { len++; } } //打印 printf("len=%d:%ld,",len, a[len-1]); for (i=len-2; i>=0; i--) { i==0 ? printf("%09ld",a[i]) : printf("%09ld,",a[i]); } printf("\n"); }


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3