代码解析

题目
1092750-20170123161528925-2088041121.png

解题思路过程:全是英文,像我这种英语一级的小渣渣完全看不懂啊,用词典翻译题目,看个大概了解。题目要求很简单就是计算a+b的值,计算的结果每三个数字用逗号隔开,分两种情况讨论,一种是不需要逗号的情况即-1000<sum<1000,一种需要逗号的情况,直接else即可。不需要逗号的情况直接输出就行了,需要逗号的情况要算出逗号前的值和逗号后的值(要保留0),同时输出,中间加上逗号即可。
第一次代码

#include<stdio.h>
#include<math.h>
int main()
{
    int a,b,c,d,sum;
    scanf("%d %d",&a,&b);
    sum=a+b;
    if(abs(sum)>999)
    {
        c=abs(sum%1000);
        d=(sum-sum%1000)/1000;
        printf("%d,%03d",d,c);
    }
    else
    {
        printf("%d",sum);
    }
    return 0;
}

调试
1092750-20170123162549253-1985884224.png
上线测试
1092750-20170123155506909-1181979828.png
部分错误,自己测试发现忘记还有了两个逗号的情况,加以修改
第二次代码

#include<stdio.h>
#include<math.h>
int main()
{
    int a,b,c,d,e,sum;
    scanf("%d %d",&a,&b);
    sum=a+b;
    if(sum<1000&&sum>-1000)
    {
        printf("%d",sum);
    }
    else if(abs(sum)>999&&abs(sum)<1000000)
    {
        c=abs(sum%1000);
        d=(sum-sum%1000)/1000;
        printf("%d,%03d",d,c);
    }
    else if(abs(sum)>999999)
    {
        c=abs(sum%1000);
        sum=(sum-sum%1000)/1000;
        d=abs(d%1000);
        e=(sum-sum%1000)/1000;
        printf("%d,%03d,%03d",e,d,c);
    }
    return 0;
}

调试结果
1092750-20170123160954206-1731872005.png

上线测试
1092750-20170123160929206-207145448.png
额,还是有一个错误......想了好久,不知道为什么还有一个WA了。
提交列表
1092750-20170123163406378-139998585.png
关于github
----------

github由于都是英文,在安装软件时出现一些安装问题没有解决掉,网上的解决方案暂时还没有看懂,所以没有在github上提交代码,github我还需要慢慢弄。

转载于:https://www.cnblogs.com/Zzwena/p/6344475.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值