现在的位置: 首页 > 综合 > 正文

uva 424

2017年11月12日 ⁄ 综合 ⁄ 共 561字 ⁄ 字号 评论关闭

小结:

      因为题目比较简单吧,第一次读题、编码、AC在一个小时内搞定,感觉不错

 代码:

#include <stdio.h>
#include <stdlib.h>
const int MAXN = 110;

int main(int argc, char *argv[])
{
    char s[MAXN];
    int an1[MAXN], sum[MAXN];
    int i,j;
    memset(sum,0,sizeof(sum));
    while (scanf("%s",s) ){
          if (s[0] == '0') break; 
          int n = strlen(s);
          memset(an1,0,sizeof(an1));
          for ( i = 0; i < n; i++){
              an1[i] = s[n-i-1] - '0';//将大数据倒放在数组里,相加时容易处理进位 
              sum[i] += an1[i];   //输入的同时每位就加起来 最后一起处理 
              }       
          }
    for (i = 0; i < MAXN; i++){
        if(sum[i] >= 10){        //一开始 自己 = 没加,小心啊 
                  sum[i+1] += sum[i]/10;
                  sum[i] %= 10;
                  }
        }
    for (i = MAXN-1; i >= 0; i--)   // 消去前导为0的部分 
        if (sum[i]) break; 
    for (j = i; j >= 0; j--)
        printf("%d",sum[j]);
    printf("\n");
  return 0;
}
【上篇】
【下篇】

抱歉!评论已关闭.