#include<stdio.h> #include<string.h> #include<stdlib.h> //两个大数相加 char* add(char *s1,char *s2,char *c) { char *s=c; int i=strlen(s1)-1,j=strlen(s2)-1,k=0; int flag=0; int sum; for(;i>=0&&j>=0;i--,j--,k++) { sum=(s1[i]-'0')+(s2[j]-'0')+flag; (flag=sum>9)?(c[k]=sum%10+'0'):(c[k]=sum+'0'); } for(;i>=0;i--,k++) { sum=(s1[i]-'0')+flag; (flag=sum>9)?(c[k]=sum%10+'0'):(c[k]=sum+'0'); } for(;j>=0;j--,k++) { sum=(s2[j]-'0')+flag; (flag=sum>9)?(c[k]=sum%10+'0'):(c[k]=sum+'0'); } if(flag) c[k++]='1'; c[k]=0; strrev(s); return s; } void main() { char *s1="66666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666"; char *s2="545986525889653998568835585599721202580552058888505568798314255555000555878943698741230254612887896124674758"; char sum[1000]; add(s1,s2,sum); puts(sum); }
两个大数相加
原创PleaseCallMe小强 博主文章分类:C ©著作权
©著作权归作者所有:来自51CTO博客作者PleaseCallMe小强的原创作品,请联系作者获取转载授权,否则将追究法律责任
上一篇:将二进制串转换成十进制串
下一篇:LCD1602小程序
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
【ArkTS】鸿蒙开发 比较两个数的大小 用户界面输入两个数并输出较大数
【HarmonyOS】 鸿蒙开发 (比较两个值大小,输出较大值)在DevEco Studio中开发,用户界面输入两个值,比较两个值大小并输出较大值。主要是练习了对TextInput属性的应用。
鸿蒙开发 TextInput属性 用户界面输入 两个值比较大小 ArkTS -
算法:如何实现两个大数相加
求两个大数的和
java 开发语言 数组 i++ 倒序 -
两个超级大数相加
两个超级大数相加:给定两个字符串形式的非负整数num1和num2,计算他们的值!!!(一般超越整数类型的表示范围值)。
算法 #include 字符串 倒序 -
389,两个超级大数相加
两个超级大的数相加,使用字符串来计算
两个超级大数相加 编程开发