数组实现大数相加

来源:互联网 发布:库卡机器人编程视频 编辑:程序博客网 时间:2024/05/17 20:34
#include <stdio.h>#include <string.h>int main(){  int flag=0,n; char s1[100],s2[100];int a1[100],a2[100];int i,j,max,l1,l2,k;scanf ("%d",&n);for (k=1;k<=n;k++){scanf ("%s",s1);scanf ("%s",s2);memset (a1,0,sizeof (a1));memset (a2,0,sizeof (a2));    l1=strlen(s1);l2=strlen(s2);if (l1>l2)max=l1;else    max=l2;for (i=0,j=strlen(s1)-1;j>=0;j--)a1[i++]=s1[j]-'0';for (j=0,i=strlen(s2)-1;i>=0;i--)a2[j++]=s2[i]-'0';for (i=0;i<max;i++){a1[i]+=a2[i];if (a1[i]>=10){a1[i]-=10;a1[i+1]++;}} for(i=99;i>=0;i--) {         if(a1[i]!=0) break;}printf ("Case %d:\n",k);printf ("%s+%s=",s1,s2);for (;i>=0;i--)printf ("%d",a1[i]);printf ("\n");}return 0;}

0 0
原创粉丝点击