PAT甲级 —— 1001 A+B Format (20分)

  • 题目链接: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 Specification:

    Each input file contains one test case. Each case contains a pair of integers a and b where − 10 ​ 6 ≤ a , b ≤ 1 0 6 −10​^6≤a,b≤10^6 106a,b106. The numbers are separated by a space.

  • Output Specification:

    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<iostream>
    #include<string>
    #include<algorithm>
    using namespace std;
    
    int main()
    {
          
          
    	int a,b,sum;
    	string s;
    	cin>>a>>b;
    	sum = a+b;
    	
    	s = to_string(sum);
    	int len = s.length();
    	for(int i=0;i<len;i++)
    	{
          
          
    		cout<<s[i];
    		
    		if (s[i] == '-') 
    			continue;
     		if ((i + 1) % 3 == len % 3 && i != len - 1) 
    		 	cout << ",";
    	}
    
    	return 0;
    } 
    
  • 说明:这个题主要就是加逗号的位置,从右向左每3各数要加一个逗号,用模运算处理,比较简单

猜你喜欢

转载自blog.csdn.net/wxc971231/article/details/108399829