zoukankan      html  css  js  c++  java
  • PAT A+B格式

    A + B格式(20)

    时间限制
    400毫秒
    内存限制
    65536 kB
    代码长度限制
    16000 B.
    判断程序
    标准
    作者
    陈,岳

    计算a + b并以标准格式输出总和 - 即数字必须用逗号分隔成三个组(除非有少于四个数字)。

    输入

    每个输入文件包含一个测试用例。每个案例包含一对整数a和b,其中-1000000 <= a,b <= 1000000。数字由空格分隔。

    输出

    对于每个测试用例,您应该在一行中输出a和b的和。总和必须以标准格式写入。

    样品输入
    -1000000 9
    
    示例输出
    -999,991


    最多只有7位数字 一共就三种可能 所以分类就好了
    # include<iostream>
    # include<string.h>
    using namespace std;
    int main()
    {
        int a,b,sum,i;
        char s[10];
        cin>>a>>b;
        sum = a + b;
        sprintf(s,"%d",sum);
        int len = strlen(s);
        if(sum>=0)
        {
            if(len<=3)
            {
                cout<<s;
            }
            else if(len>3 && len<=6)
            {
                for(i=0; i<=len-4;i++)
                {
                    cout<<s[i];
                }
                cout<<",";
                for(i=len-3;i<len;i++)
                {
                    cout<<s[i];
                }
            }
            else
            {
                for(i=0; i<=len-7;i++)
                {
                    cout<<s[i];
                }
                cout<<",";
                for(i=len-6;i<len-3;i++)
                {
                    cout<<s[i];
                }
                cout<<",";
                for(i=len-3;i<len;i++)
                {
                    cout<<s[i];
                }
            }
        }
        else
        {
            cout<<s[0];
            if(len<=4)
            {
                for(i=1;i<len;i++)
                {
                    cout<<s[i];
                }
            }
            else if(len>4 && len<=7)
            {
                for(i=1; i<=len-4;i++)
                {
                    cout<<s[i];
                }
                cout<<",";
                for(i=len-3;i<len;i++)
                {
                    cout<<s[i];
                }
            }
            else
            {
                for(i=1; i<=len-7;i++)
                {
                    cout<<s[i];
                }
                cout<<",";
                for(i=len-6;i<len-3;i++)
                {
                    cout<<s[i];
                }
                cout<<",";
                for(i=len-3;i<len;i++)
                {
                    cout<<s[i];
                }
            }
        }
        
        return 0;
    }

    1、数字转字符串:使用sprintf()函数

    char str[10];
    int a=1234321;
    sprintf(str,"%d",a);
    --------------------
    char str[10];
    double a=123.321;
    sprintf(str,"%.3lf",a);
    --------------------
    char str[10];
    int a=175;
    sprintf(str,"%x",a);//10进制转换成16进制,如果输出大写的字母是sprintf(str,"%X",a)

    2、字符串转数字:使用sscanf()函数

    char str[]="1234321";
    int a;
    sscanf(str,"%d",&a);
    .............
    char str[]="123.321";
    double a;
    sscanf(str,"%lf",&a);
    .............
    char str[]="AF";
    int a;
    sscanf(str,"%x",&a); //16进制转换成10进制

    另外也可以使用atoi(),atol(),atof().

  • 相关阅读:
    jQuery入门(8):工具
    jQuery入门(2):核心(核心函数,对象访问,多库共存)
    jQuery入门(6):Ajax
    jQuery入门(7):效果
    jQuery入门(4):CSS相关API
    threadwait/sleep
    【转】Query的extend扩展方法使用点滴
    jquery.query2.1.7.js 操作url
    zhuan
    通用分页存储过程 采用ROW_NUMBER(),支持2005及以后的版本
  • 原文地址:https://www.cnblogs.com/wshyj/p/6337249.html
Copyright © 2011-2022 走看看