• HPU--1392 分隔A+B


    题目描述

    让我们回到最初的A+B问题!

    我们知道英语习惯每三位换一个词(thousand、million、billion……),所以数字常常每三位用一个逗号隔开,如:123,456,789,而我们就更习惯于每四位隔开:1,2345,6789

    为了与国际接轨,这一题考察你国际化的表示方法。

    给出你AB,请你输出A+B,并用“,”每三位隔开(注意是从个位起)。

    输入

    多组测试数据,请处理到文件结束。

    每组一行是两个数AB

    -109 ≤ A ≤ 109

    -109 ≤ B ≤ 109

    输出

    请按要求格式输出A+B

    样例输入

    1 2
    1234 2345
    -1234 234
    

    样例输出

    3
    3,579
    -1,000
     1 #include<stdio.h>
     2 int main()
     3 {
     4     int a,b,i,j;
     5     char num[20];
     6     long long sum;
     7     while(scanf("%d %d",&a,&b)!=EOF)
     8     {
     9         sum=a+b;
    10         long long x;
    11         x=sum;
    12         if(sum<=0) sum=-sum;  //和为负数,忘记考虑,错了一次 
    13         int k=0,i=0,l=0;
    14         while(sum!=0)
    15         {
    16             num[i++]=sum%10+'0';  //刚开始忘记了考虑是字符 
    17             sum/=10;
    18             k++;
    19             l++;
    20             if(k==3)
    21             {
    22                 num[i]='a';
    23                 i++;
    24                 k=0;
    25             }
    26         }
    27         if(x<0) printf("-");
    28         if(x==0) printf("0");  //等于0忘记考虑又错了一次 
    29         if(l%3==0)   //输出的首位不能是逗号 
    30         {
    31             
    32             for(j=i-2;j>=0;j--)
    33             {
    34                 if(num[j]=='a')
    35                     printf(",");
    36                 else    
    37                     printf("%d",num[j]-'0');
    38             }   
    39             printf("
    ");    
    40         }
    41         else
    42         {
    43             for(j=i-1;j>=0;j--)  
    44             {
    45                 if(num[j]=='a')
    46                     printf(",",num[j]);
    47                 else    
    48                     printf("%d",num[j]-'0');
    49             }
    50             printf("
    ");    
    51         }
    52     }
    53     return 0;
    54 }
  • 相关阅读:
    帮朋友写的两篇文章
    与疯姐的对话
    实现C(i,j)=A(m,n,w)+B(m,n)
    误差处理相关
    http://blog.sina.com.cn/s/blog_4aae007d0100inxi.html
    全局变量和局部变量
    Yeelink:将复杂的传感器以极简的方式组到同一个网络内
    基站分布:GDOP
    C++学习路线图
    Matlab中三点确定质心
  • 原文地址:https://www.cnblogs.com/hss-521/p/7350812.html
Copyright © 2020-2023  润新知