高精度加法C语言
#include <stdio.h> #include <string.h> int main() { char a[202]={0},b[202]={0}; scanf("%s%s",a,b); int alen=strlen(a),blen=strlen(b); int a1[202]={0},b1[202]={0},c1[203]={0},i; for(i=0;i<alen;i++) { a1[i]=a[alen-1-i]-'0'; } for(i=0;i<blen;i++) { b1[i]=b[blen-1-i]-'0'; } alen = alen > blen ? alen:blen; for(i=0;i<alen;i++) { c1[i]=a1[i]+b1[i]; } for(i=0;i<alen;i++) { if(c1[i]>=10) { c1[i+1]+=c1[i]/10; c1[i] %=10; } } while(!c1[i] && i) { i--; } for(;i>=0;i--) { printf("%d",c1[i]); } return 0; }
你數過天上的星星嗎