码迷,mamicode.com
首页 > 其他好文 > 详细

五:大数运算-加法运算

时间:2017-12-29 20:59:00      阅读:167      评论:0      收藏:0      [点我收藏+]

标签:大数   计算   stdio.h   输出   ems   ret   set   相加   return   

问题 : 大数-加法运算
题目描述

请计算两个整数相加(数的范围:0 <= num < 10 ^ 100)
输入
两个整数
输出
一个整数
样例输入
1000000
1000000
样例输出
2000000

 1 #include<stdio.h>
 2 #include<string.h>
 3 #define M 100000
 4 int Inter_Sum[M];
 5 void fun(char str1[],char str2[]){
 6     int t,m=0,i=strlen(str1);
 7     int p=strlen(str2)-1;
 8     int k=0;
 9     while(i--){
10             if(p>=0)
11          t=(str1[i]-48)+(str2[p]-48)+m;
12          else t=(str1[i]-48)+m;
13         if(t<10){
14             Inter_Sum[k]=t;
15             m=0;
16         }else{
17             Inter_Sum[k]=t%10;
18             m=t/10;
19         }    
20         k++;
21         p--;
22         if(i==0&&m!=0)Inter_Sum[k++]=m; 
23     }
24     for(int j=k-1;j>=0;j--){
25         printf("%d",Inter_Sum[j]);
26     }
27 }
28 int main(){
29     char str1[M];
30     char str2[M];
31     memset(str2,0,sizeof(str2));
32     int i=0,j=0;
33     scanf("%s %s",str1,str2);
34     str1[strlen(str1)]=\0;
35     str2[strlen(str2)]=\0;
36     if(strlen(str1)>=strlen(str2))
37     fun(str1,str2);
38     else fun(str2,str1);
39     return 0;
40 }

 

五:大数运算-加法运算

标签:大数   计算   stdio.h   输出   ems   ret   set   相加   return   

原文地址:https://www.cnblogs.com/yuming226/p/8146097.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!