大数加法A+B
来源:互联网 发布:ios 可变字典添加数据 编辑:程序博客网 时间:2024/06/08 00:00
思路:
1、将A B当作字符串读入。
2、将两个字符串分别倒序。
3、从个位对齐开始进行相加,对是否产生进位进行判断。
4、当两个串长度不等,相加结束后,较长的串剩下的位单独与进位运算。
5、将结果倒序输出。
#include <stdio.h>int main(){ // 读取两个字符串 char ta[1002]; char tb[1002]; scanf("%s %s",ta,tb); // 计算 a b 的长度 int ia = 0; int ib = 0; while(ta[ia] != '\0') ia++; while(tb[ib] != '\0') ib++; // 将 a b 倒序 char a[1002]; char b[1002]; int i = -1; for(i=0; i<ia; i++) a[i] = ta[ia-1-i]; for(i=0; i<ib; i++) b[i] = tb[ib-1-i]; a[ia] = '\0'; b[ib] = '\0'; // 求和 char c[1003]; int ret = 0; if(ia < ib) { for(i=0; i<ia; i++) { c[i] = (ret + (a[i]-'0') + (b[i]-'0')) + '0'; ret = (c[i]-'0') / 10; c[i] = ((c[i]-'0') % 10) + '0'; } for(; i<ib; i++) { c[i] = (ret + (b[i]-'0')) + '0'; ret = (c[i]-'0') / 10; c[i] = ((c[i]-'0') % 10) + '0'; } if(ret != 0) { c[i] = ret + '0'; i++; c[i] = '\0'; } else c[i] = '\0'; } else { for(i=0; i<ib; i++) { c[i] = (ret + (a[i]-'0') + (b[i]-'0')) + '0'; ret = (c[i]-'0') / 10; c[i] = ((c[i]-'0') % 10) + '0'; } for(; i<ia; i++) { c[i] = (ret + (a[i]-'0')) + '0'; ret = (c[i]-'0') / 10; c[i] = ((c[i]-'0') % 10) + '0'; } if(ret != 0) { c[i] = ret + '0'; i++; c[i] = '\0'; } else c[i] = '\0'; } // 将 c 倒序 char r[1003]; if(i != -1) { int j; for(j=0; j<i; j++) r[j] = c[i-1-j]; r[j] = '\0'; printf("%s\n", r); }}
0 0
- 大数加法A+B
- a+b(大数加法)
- A + B Problem II(大数加法)
- A + B Problem II (大数加法)
- HDOJ1002 A + B Problem II(大数加法)
- HDU 1753 大明A+B (大数加法)
- ACMSTEP 2.3.1 A+B Problem II //大数加法
- hduoj1002,A + B Problem II, 大数加法,经典
- HRBUST OJ 1908 大数加法A+B+C
- nyoj103 A+B Problem II (大数加法)
- (hdu step 2.3.1)A + B Problem II(大数加法)
- A + B Problem II(hdu1002,大数加法)
- hdu 1002 A + B Problem II(大数模拟加法)
- HD1002 A + B Problem II(大数简单的加法)
- HDU 1753 大明A+B(大数加法,数组模拟)
- hdoj 1002 A + B Problem II 【大数加法模板】
- HDU 1002 A + B Problem II (大数加法)
- hduoj 1002 A + B Problem II(大数加法)
- lightoj 1025 - The Specials Menu 【区间dp】
- Linux进程调度——schedule()函数分析
- java中文乱码解决之道(五)-----java是如何编码解码的
- poj题目分类
- P网 虚拟币评分
- 大数加法A+B
- Intent的常用Flag参数
- java中文乱码解决之道(六)-----javaWeb中的编码解码
- 查询每个用户最新的日志访问信息
- 非递归求解N皇后问题(回溯法)
- 数据结构基础排序算法
- Java实现24点纸牌游戏
- Java中的Object2
- java中文乱码解决之道(七)-----JSP页面编码过程