2013年4月_武科大程序设计大赛(复赛-非专业组)_解题报告(problem 1004)
2013-04-09 13:45
316 查看
高进度加法,细心一点就行,就是模拟自己手算的过程。
//高精度加法(模拟) #include<stdio.h> #include<string.h> char a[1100],b[1100]; int sum[1100]; int calc() { int i,j,lena,lenb; lena=strlen(a); lenb=strlen(b); for (i=lena-1;i>=0;i--) sum[lena-1-i]=a[i]-'0'; for (i=lenb-1;i>=0;i--) sum[lenb-1-i]+=b[i]-'0'; if (lena>lenb) j=lena; else j=lenb; for (i=0;i<=j+1;i++) if (sum[i]>=10) { sum[i+1]+=sum[i]/10; sum[i]=sum[i]%10; } return j; } int output(int i) { int j; for (j=i+1;j>=0;j--) if (sum[j]) break; printf("%s + %s = ",a,b); for (i=j;i>=0;i--) printf("%d",sum[i]); printf("\n"); return 0; } int main() { int n,i; scanf("%d",&n); for (i=0;i<n;i++) { scanf("%s%s",a,b); memset(sum,0,sizeof(sum)); printf("Case %d:\n",i+1); output(calc()); if (i<n-1) printf("\n"); } return 0; }
相关文章推荐
- 2013年4月_武科大程序设计大赛(复赛)_解题报告(problem 1004)
- 2013年4月_武科大程序设计大赛(复赛-非专业组)_解题报告(problem 1001)
- 2013年4月_武科大程序设计大赛(复赛-非专业组)_解题报告(problem 1002)
- 2013年4月_武科大程序设计大赛(复赛-非专业组)_解题报告(problem 1003)
- 2013年4月_武科大程序设计大赛(复赛-非专业组)_解题报告(problem 1005)
- 2013年4月_武科大程序设计大赛(复赛-非专业组)_解题报告(problem 1006)
- 2013年4月_武科大程序设计大赛(复赛)_解题报告(problem 1005)
- 2013年4月_武科大程序设计大赛_解题报告(problem 1004)
- 2013年4月_武科大程序设计大赛(复赛)_解题报告(problem 1006)
- 2013年4月_武科大程序设计大赛(复赛)_解题报告(problem 1001)
- 2013年4月_武科大程序设计大赛(复赛)_解题报告(problem 1002)
- 2013年4月_武科大程序设计大赛(复赛)_解题报告(problem 1003)
- 2013年4月_武科大程序设计大赛_解题报告(problem 1003)
- 2013年4月_武科大程序设计大赛_解题报告(problem 1005)
- 2013年4月_武科大程序设计大赛_解题报告(problem 1006)
- 2013年4月_武科大程序设计大赛_解题报告(problem 1001)
- 2013年4月_武科大程序设计大赛_解题报告(problem 1002)
- 第四届吉林省大学生程序设计大赛个人解题报告 Problem C: The Natural Series
- 第四届吉林省大学生程序设计大赛个人解题报告 Problem H: New Feature in Windows 7
- 第四届吉林省大学生程序设计大赛个人解题报告 Problem B: The Farmer’s Heritage