标签:amp def include efi ring print std har i++
题目为输入两个很大的数字,求和后输出,第一个参数为需要求和的数据组数
#include <stdio.h> #include <stdlib.h> #include <string.h> #define MAX 1000 char* add(char *a,char *b,char *r){ memset(r, 0, MAX); char res[MAX]={0}; int la=strlen(a); int lb=strlen(b); int lr=(la>lb)?la:lb; for (int i=0; i<lr; i++) { if (i<la) { if (i<lb) { res[i]+=a[la-1-i]+b[lb-i-1]-2*‘0‘; } else{ res[i]+=a[la-1-i]-‘0‘; } } else{ res[i]+=b[lb-i-1]-‘0‘; } res[i+1]+=res[i]/10; res[i]=res[i]%10; } if (res[lr]!=0) { lr++; } for (int i=0; i<lr; i++) { r[lr-i-1] = res[i]+‘0‘; } return r; } int main(){ int n; char a[MAX], b[MAX], c[MAX]; scanf("%d", &n); for(int i=0; i<n; i++) { scanf("%s %s", a, b); printf("Case %d:\n%s + %s = %s\n", i+1, a, b, add(a, b, c)); if(i<n-1) { printf("\n"); } } return 0; }
标签:amp def include efi ring print std har i++
原文地址:https://www.cnblogs.com/zhouqianwei/p/11478559.html