HDU1002

HDOJ 1002:C++ 千位数以内的大数加法

牧云@^-^@ 提交于 2020-01-07 07:43:38
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 编译环境:MinGW5.1.6 1.大数加法函数实现思路 1)函数输入:字符串形式的数字a和b 2)翻转字符串a和b,这样可以使两个数字的末位对其,利于逐位加法运算 3)将a和b中各位相加,和赋值到字符串sum对应位中,如果有进位则sum中的下一位自增1 4)将字符串a、b、sum翻转,a和b会翻转为它们原来的样子,sum即数字a与b的和 5)去掉sum前面多余的0 6)函数输出:字符串形式的数字sum 2.函数体(包括翻转字符串用的函数Reverse和加法函数Add) ///翻转一个字符串 /* *@param char s[] 被翻转的字符串 *@return char* 翻转后的字符串 */ char* Reverse(char s[]) { int i = 0, j = strlen(s) - 1; char temp; while(i < strlen(s) / 2) { temp = s[i]; s[i] = s[j]; s[j] = temp; i++; j--; } return s; } ///两个字符串表示的大数的加法运算 /* *@param char a[] 加数1 *@param char b[] 加数2 *@return char* 和 */ char* Add(char a[],