C 语言高精度算法(一)——加法
2016-12-26 14:45
204 查看
[摘要]所谓的高精度运算,是指参与运算的数范围大大超出了标准数据类型(整型、实型)能表示的范围运算。这个时候只能用数组来表示参与运算的数字,那么他们的运算也就不能简单的直接进行了。
#include "stdafx.h" #include<stdio.h> #include<string.h> int main() { char numberN[1500], numberM[1500]; scanf("%s%s", numberN, numberM); int n = strlen(numberN), m = strlen(numberM); int a[3], b[3]; int i, j; for (i = 0, j = n - 1; i < n; i++, j--) { a[i] = numberN[j] - '0'; } for (i = 0, j = m - 1; i < m; i++, j--) { b[i] = numberM[j] - '0'; } int c[3000]; for (i = 0; i < 3000; i++) { c[i] = 0; } for(i = 0; i < 3; i++) { c[i] = (a[i] + b[i]) % 10 + c[i]; //对最低位2个数相加,得到2位数的个位数值。 c[i+1] = (a[i] + b[i])/10; //对最低位2个数相加,若大于10,进位。 } for (j = 2999; j > 0; j--) { if (c[j] != 0) break; } for (i = j; i >= 0; i--) { printf("%d", c[i]); } printf("\n"); return 0; }
相关文章推荐
- C语言数组加链表实现大数的加法乘法
- [CS@Nets][编译原理]一个栈式计算机的加法语言编译器
- 高精度算法——被限制的加法
- 高精度算法(加法)
- C语言学习5-1:字符加法,字符串操作函数编写,查找数组中第二大的数
- C 语言高精度算法(二)——乘法
- IL中间语言理解学习001-Add加法解析
- 高精度算法一:加法和减法
- JAVA语言 加法运算器
- C# 语言基础(简单的输出 输入语句 和 加法运算符)
- 0006 编程入门python语言之加法计算器
- 汇编语言基础教程-加法指令
- 小白C语言写高精度算法(加法)
- 高精度算法-大数加法
- C语言基础篇:大数的加法
- 蓝桥杯JAVA语言B组_加法变乘法
- C语言作业-7-1多项式加法
- 汇编语言中的大数据加法
- 汇编语言AAA指令多字节加法代码分析(5)
- 汇编语言,双精度加法运算