• 1001 A+B Format (20)


    Calculate a + b and output the sum in standard format -- that is, the digits must be separated into groups of three by commas (unless there are less than four digits).

    Input

    Each input file contains one test case. Each case contains a pair of integers a and b where -1000000 <= a, b <= 1000000. The numbers are separated by a space.

    Output

    For each test case, you should output the sum of a and b in one line. The sum must be written in the standard format.

    Sample Input

    -1000000 9
    

    Sample Output

    -999,991
    //先求和再将和存储到数组中,倒叙三位一组输出 
    #include<cstdio>
    int num[10];
    int main(){
        int a,b;
        scanf("%d%d",&a,&b);
        int sum = a + b;
        if(sum < 0){
            printf("-");
            sum = -sum;
        }
        int len = 0; 
        if(sum == 0) num[len++] = 0; //可以用do while()循环就不用对len=0进行特殊处理 
        while(sum){
            num[len++] = sum % 10;
            sum /= 10;
        }
        for(int i = len - 1; i >= 0; i--){
            printf("%d",num[i]);
            if(i > 0 && i % 3 == 0) printf(",");
        }
        return 0;
    }
    //printf输出格式中,%3d输出三位整数,位数不足高位补空格 %03位数不足补0 
    #include<cstdio>
    int num[10];
    int main(){
        int a,b;
        scanf("%d%d",&a,&b);
        int sum = a + b;
        if(sum < 0){
            printf("-");
            sum = -sum;
        }
       if(sum >= 1000000)  printf("%d,%03d,%03d",sum/1000000,sum%1000000/1000,sum%1000); //第二个数要mod1000000 且等号不能少
       else if(sum > 1000) printf("%d,%03d",sum/1000,sum%1000); //1000通过 
       else {
           printf("%d",sum);
       }
        return 0;
    }

     2019.7.7

    #include<stdio.h>
    
    int main()
    {
        int a,b;
        int arr[10];
        int sum;
        scanf("%d%d",&a,&b);
        sum = a + b;
        int len = 0;
        if(sum < 0)
        {
            printf("-");
            sum = -sum;
        }
        if(sum == 0)
        {
            printf("0
    ");
        }
        while(sum)
        {
            arr[len++] = sum % 10;
             sum /= 10;
        }
        for(int i = len - 1; i >= 0; i--)
        {
            printf("%d",arr[i]);
            if(i % 3 == 0 && i != 0)
            {
                printf(",");
            }
        }
        return 0;
    }
  • 相关阅读:
    LeetCode 226. Invert Binary Tree
    LeetCode 221. Maximal Square
    LeetCode 217. Contains Duplicate
    LeetCode 206. Reverse Linked List
    LeetCode 213. House Robber II
    LeetCode 198. House Robber
    LeetCode 188. Best Time to Buy and Sell Stock IV (stock problem)
    LeetCode 171. Excel Sheet Column Number
    LeetCode 169. Majority Element
    运维工程师常见面试题
  • 原文地址:https://www.cnblogs.com/wanghao-boke/p/9384611.html
Copyright © 2020-2023  润新知