首页  >  问答  >  正文

C++中存储超过32位的大整数,并且需要对其进行取余操作,该怎么设计?

在做一个习题,要求如下:

我在数字比较小时已经解决了这个问题,可是当整数达到30位时,long long int 已经不能存储,请问有什么解决方法吗?

我自己写的程序详见 https://github.com/huyang7211...

欢迎大家一起来刷题

ringa_leeringa_lee2714 天前540

全部回复(4)我来回复

  • 高洛峰

    高洛峰2017-04-17 15:00:43

    用字符数组处理,可以增加灵活性;
    eg:

    char chArr[32] = "12345678912345678912345678912345";//你可以使用比较大的长度
    int i = 0, sum = 0;
    for(; i < 32; i++)
    {
        sum += chArr[i] - '0';
    }

    回复
    0
  • 迷茫

    迷茫2017-04-17 15:00:43

    用字符数组

    回复
    0
  • 怪我咯

    怪我咯2017-04-17 15:00:43

    你其实不需要存储这个数本身...

    回复
    0
  • 迷茫

    迷茫2017-04-17 15:00:43

    如果是我,我会将这个数当做一个串来进行处理。

    回复
    0
  • 取消回复