C语言如何存储一个20位的大数,并且可以加减操作

如题所述

可以编写一个 struct,里面有 3 个低位的 unsigned int 和 1 个高位的 int,然后自己写加减法函数进行 int 之间的进位或借位处理。追问

不明白,能帮忙写个吗

追答/* 数据从最低位开始,即个位在索引0,十位在索引1 */
int i, a[100], b[100], c[100];
for (i = 0; i < 100; ++i) 
    c[i] = a[i] + b[i];    
/* 处理进位 */
for (i = 0; i < 100; ++i) {
    c[i+1] += c[i] / 10; 
    c[i] %= 10;
}

温馨提示:答案为网友推荐,仅供参考
相似回答