面试题: 大数相加
来源:互联网 发布:合肥市行知学校教师 编辑:程序博客网 时间:2024/06/06 09:07
/*思想是新建两个字符串指针分别指向两串字符串的末尾数据,然后开始往前加*/
直接上程序:
/*大数相加*/#include <stdio.h>#include <string.h>#include <stdlib.h>void add(char a[],char b[]){int len_a = strlen(a);int len_b = strlen(b);char* p = a + len_a - 1;char* q = b + len_b - 1;int len = 0;int flag = 0;int temp = 0;char * c = NULL; //建立新的字符串存储数据 int num = 0;if (len_a > len_b){c = (char*)malloc(len_a+1); //分配空间 }else{c = (char*)malloc(len_b+1);}while(p >= a || q >= b){temp = 0;if (p >= a){temp += *p - '0';p--;}if (q >= b){temp += *q - '0';q--; }if (flag != 0){temp++;}if (temp >= 10){flag++;temp %= 10;}else{flag = 0;}*c++ = temp+'0'; num++;} if (flag != 0){*c++ = '1';num++;}while (num>=0){c--;printf("%c",*c);num--;}c++;free(c);}int main(void){char a[80];char b[80];memset(a,0,80);memset(b,0,80);printf("input a:");scanf("%s",a);printf("input b:");scanf("%s",b);add(a,b);return 0;}
- 面试题: 大数相加
- 大数相加 面试题
- 面试题大数相加相减
- 面试题之自创 大数相加减
- 一道PHP面试题 大数相加 溢出的处理
- 一道PHP面试题 大数相加 溢出的处理
- 面试题之自创 实现两个整型大数(都是正数)的相加操作
- 剑指offer之面试题12 大数相加 实现任意两个整数的加法
- 华为机试题--- 大数相加 异常处理
- 2014华为机试题2:大数相加
- 面试题整理-大数求和
- [各种面试题] 大数乘法
- 大数相加
- 大数相加
- 大数相加
- 大数相加
- 大数相加
- 大数相加
- SQLite3使用详解
- 背包问题合集
- Linux rpm 命令参数使用详解[介绍和应用]
- object c内存管理转载
- Vim打开Python源码自动添加#!行和编码行 升级版
- 面试题: 大数相加
- 图片滚动控制栏
- 将两个整形数组排序后合并成一个数组
- Java和C实现的冒泡排序(基本思想)
- ubuntu 安装eclipse
- BB 10 NDK编译错误Nothing to be done for `first'
- 黑马程序员——01Java入门
- linux中文件的组织形式
- core dump