Chinaunix首页 | 论坛 | 博客
  • 博客访问: 77186
  • 博文数量: 32
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 284
  • 用 户 组: 普通用户
  • 注册时间: 2015-04-26 14:00
个人简介

有梦想的人,正在努力

文章分类

全部博文(32)

文章存档

2015年(32)

我的朋友

分类: C/C++

2015-05-13 01:21:25

数字都是正数

很简单,直接贴代码了。


  1. #include <stdio.h>
  2. #include <string.h>
  3. int main()
  4. {
  5.     char a[1000], b[1000], c[1001];
  6.     int n, ct = 1;
  7.     scanf("%d", &n);
  8.     getchar();
  9.     while(n--)
  10.     {
  11.         scanf("%s%s", a, b);
  12.         int lena = strlen(a) - 1;
  13.         int lenb = strlen(b) - 1;
  14.         printf("Case %d:\n%s + %s = ", ct++, a, b);
  15.         int i, p = 0;
  16.         for(i = 0; lena >= 0 || lenb >= 0; ++i, --lena, --lenb)
  17.         {
  18.             if(lena >= 0 && lenb >= 0) c[i] = a[lena] + b[lenb] - '0' + p;
  19.             if(lena >= 0 && lenb < 0) c[i] = a[lena] + p;
  20.             if(lena < 0 && lenb >= 0) c[i] = b[lenb] + p;
  21.             p = 0;
  22.             if(c[i] - '0' > 9) {c[i] -= 10; p = 1;}
  23.         }
  24.         if(p) printf("%d", 1);
  25.         for(--i; i >= 0; --i)
  26.             printf("%c", c[i]);
  27.         printf("\n");
  28.         if(0 != n) printf("\n");
  29.     }
  30.     return 0;
  31. }

阅读(385) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~