大整数加法回顾
来源:互联网 发布:阿里云主机登陆 编辑:程序博客网 时间:2024/05/19 13:15
/* hdu 1002 AC */#include <stdio.h>#include <stdlib.h>#include <string.h>char res[1001], num1[1001], num2[1001];void bigIntAdd(char * res, char * num1, char * num2) { char * tmp; int tmp2; char sum, jinwei; int len1, len2, i, j; len1 = strlen(num1); len2 = strlen(num2); if (len1 < len2) { tmp = num1; num1 = num2; num2 = tmp; tmp2 = len1; len1 = len2; len2 = tmp2; } res[len1+1] = '\0'; //!!! i = len1 - 1; j = len2 - 1; jinwei = 0; while (i >= 0) { if (j >= 0) { sum = num1[i]-'0' + num2[j]-'0' + jinwei; if (sum > 9) { res[i+1] = sum - 10 + '0'; jinwei = 1; } else { res[i+1] = sum + '0'; jinwei = 0; } i--; j--; } else { sum = num1[i]-'0' + jinwei; if (sum > 9) { res[i+1] = sum - 10 + '0'; jinwei = 1; } else { res[i+1] = sum + '0'; jinwei = 0; } i--; } } if (jinwei) res[0] = '1'; else res[0] = '0';}void printBigInt(char * str) { if (res[0] != '0') printf("%s", str); else printf("%s", str + 1);}void main() { int T, kas; scanf("%d", &T); for (kas = 1; kas <= T; kas++) { scanf("%s%s", num1, num2); bigIntAdd(res, num1, num2); printf("Case %d:\n", kas); printf("%s + %s = ", num1, num2); printBigInt(res); putchar('\n'); if (kas != T) putchar('\n'); }}
0 0
- 大整数加法回顾
- 大整数加法
- 大整数加法
- 高精度 大整数加法
- 大整数加法
- 大整数加法
- 大整数加法
- 大整数加法
- 大整数加法计算
- zoj1292大整数加法
- 大整数加法
- 大整数加法
- 大整数加法函数
- 大整数加法
- 大整数加法
- 大整数加法
- 大整数加法
- 大整数加法
- 【网络通信:Volley】请求的发送与响应之String
- 优化sql感悟
- Centos6.5 安装ftp
- 多线程程序处理内存泄漏和访问冲突问题
- OC学习之Runtime之一成员变量和属性
- 大整数加法回顾
- 当listview里的item不止一种类型时
- application json请求与传统请求
- nginx 安装阶段整个项目的配置文件分析
- 经典的《Rework》
- 兔子--PullToRefreshListView
- arp 静态绑定的问题
- ios设置图片为圆形
- 程序的多文件组织