acm1002大数加法
来源:互联网 发布:人民网舆情监测室 知乎 编辑:程序博客网 时间:2024/06/05 15:16
利用数组对大数进行运算
#include<stdio.h>
#include<string.h>
#define N 1002
int main(){
int i,j,n,len1,len2;
char a[N],b[N];
int c[N]={0};
while(scanf("%d",&n)!=EOF){
for( i=1;i<=n;i++){
j=-1;
scanf("%s",&a);
scanf("%s",&b);
len1=strlen(a);
len2=strlen(b);
while(len1>0&&len2>0){
j++;
c[j]+=((a[--len1]-'0')+(b[--len2]-'0'));
if(c[j]>=10){//如果c[j]大于10则取余
c[j]-=10;
c[j+1]++;
}
}
if(len1>0){
while(len1>0){
c[j+1]+=(a[len1-1]-'0');
j++;
if(c[j]>=10){
c[j+1]++;
c[j]=c[j];
}
len1--;
}
}
else if(len2>0){
while(len2>0){
c[j+1]+=(b[len2-1]-'0');
j++;
if(c[j]>=10){
c[j+1]++;
c[j]=c[j];
}
len2--;
}
}
else if(len1==len2){
if(c[j+1]>0)
j++;
}
printf("Case %d:\n",i);
printf("%s + %s = ",a,b);
for(int l=j;l>=0;l--){
printf("%d",c[l]);
c[l]=0;
}
printf("\n");
if(i!=n)
printf("\n");
}
return 0;
}
}
阅读全文
0 0
- acm1002大数加法
- acm1002 大数相加
- 杭电ACM1002--大数相加
- 杭电acm1002 大数相加
- acm1002
- acm1002
- ACM1002
- 大数加法
- 大数加法
- 大数加法
- 大数加法
- 大数加法
- 大数加法
- 大数加法
- 大数加法
- 大数加法
- 大数加法
- 大数加法
- Vue开源项目库汇总
- == 和 equals,equals 与 hashcode,HashSet 和 HashMap,HashMap 和 Hashtable
- 测试开发从入门到放弃之前端01_HTML5_DTD文档及Head标签内容
- JavaSE学习--HTML
- 20170607_sizeof() 运算符的概念
- acm1002大数加法
- redis五种数据类型的增删改查语法
- ios11 下载地址
- Spark2.x 快速入门教程 1
- CentOS-6.9 开启SSH远程连接
- 【整理】Python 单元测试框架
- nfs
- leetcode 416. Partition Equal Subset Sum
- BZOJ4300[绝世好题]题解--DP