1. 程式人生 > >杭電oj1002,,做完留一下記錄(c)

杭電oj1002,,做完留一下記錄(c)

etc pan temp span memset main i++ char pri

 1 #include <stdio.h>
 2 #include <string.h>
 3  void Print(int a[1001]);
 4 int main()
 5 {
 6     int t,i,j,k;
 7     scanf("%d",&t);
 8     getchar();
 9     char temp1[1001],temp2[1001];
10     int a[20][1001],b[20][1001],c[20][1001];
11     memset(a,0,t*1001*4);
12     memset(b,0,t*1001*4);
13     memset(c,0
,t*1001*4); 14 for(i=0;i<t;i++) 15 { 16 scanf("%s%s",temp1,temp2); 17 for(j=1001-strlen(temp1),k=0;j<=1000;j++,k++) 18 { 19 a[i][j]=temp1[k]-0; 20 } 21 for(j=1001-strlen(temp2),k=0;j<=1000;j++,k++) 22 { 23 b[i][j]=temp2[k]-0
; 24 } 25 } 26 for(i=0;i<t;i++) 27 { 28 for(j=1000;j>0;j--) 29 { 30 k=c[i][j]; 31 c[i][j]=(k+a[i][j]+b[i][j])%10; 32 c[i][j-1]=(k+a[i][j]+b[i][j])/10; 33 } 34 } 35 for(i=0;i<t;i++) 36 { 37 38 printf("Case %d:\n
",i+1); 39 Print(a[i]); 40 printf(" + "); 41 Print(b[i]); 42 printf(" = "); 43 Print(c[i]); 44 printf("\n"); 45 if(i<t-1) printf("\n"); 46 } 47 return 0; 48 } 49 void Print(int a[1001]) 50 { 51 int j,k; 52 for(j=0,k=0;j<1001;j++) 53 { 54 if(k||a[j]!=0) k=1; 55 if(k) 56 { 57 printf("%d",a[j]); 58 } 59 } 60 }

杭電oj1002,,做完留一下記錄(c)