NKOJ 1019

NKOJ 1019

http://acm.nankai.edu.cn/p1019.html
大数相加,利用数组存储,再加上适当处理。
 1  #include < stdio.h >
 2  #include < string .h >
 3  char  a[ 101 ],b[ 101 ];
 4  int  c[ 101 ];
 5  int  main()
 6  {
 7       while (scanf( " %s%s " ,a,b)  !=  EOF){
 8          memset(c, 0 , sizeof (c));
 9           int  i,j,k;
10           for (i  =  strlen(a) - 1 ,j  =  strlen(b) - 1 ,k  =   0 ;i >= 0   ||  j >= 0 ;k ++ ){
11              c[k]  =  (i >= 0 ? (a[i -- ] - ' 0 ' ): 0 +  (j >= 0 ? (b[j -- ] - ' 0 ' ): 0 );
12          }
13           for (i  =   0 ;i  <  k; ++ i){
14               if (c[i]  >   9 ){
15                  c[i + 1 +=  c[i] / 10 ;
16                  c[i]  =  c[i] % 10 ;
17              }
18          }
19           while ( ! c[k]){
20              k -- ;
21          }
22           for (i  =  k;i >= 0 ; -- i){
23              printf( " %d " ,c[i]);
24          }
25          printf( " \n " );
26      }
27       return   0 ;
28  }

你可能感兴趣的:(NKOJ 1019)