c语言 根据邮件的重量和蒜头君是否选择加急计算邮费。
根据邮件的重量和蒜头君是否选择加急计算邮费。计算规则:重量在10001000克以内(包括10001000克),基本费88元。超过10001000克的部分,每500500克加收超重费44元,不足500500克部分按500500克计算;如果蒜头君选择加急,多收55元。输入格式输入一行,包含一个正整数和一个字符,以一个空格分开,分别表示重量(单位为克,不超过2\cdot 10^52⋅105)和是否加急。
·
这个是c语言版本的,私写得不够优化,大家可以再精简一下。
我的就是理解起来对比起来会简单一些,希望对大家有帮助。
根据邮件的重量和蒜头君是否选择加急计算邮费。
计算规则:重量在 10001000 克以内(包括 10001000 克),基本费 88 元。
超过 10001000 克的部分,每 500500 克加收超重费 44 元,不足 500500 克部分按 500500 克计算;
如果蒜头君选择加急,多收 55 元。
输入格式
输入一行,包含一个正整数和一个字符,以一个空格分开,分别表示重量(单位为克,不超过 2\cdot 10^52⋅105)和是否加急。
如果字符是'y'
,说明选择加急;如果字符是'n'
,说明不加急。
输出格式
输出一行,包含一个整数,表示邮费。
输出时每行末尾的多余空格,不影响答案正确性
样例输入复制
1200 y
样例输出复制
17
#include <stdio.h>
#include <math.h>
int main()
{
int a;
char b;
scanf("%d ",&a);
scanf("%c",&b);
int c;
int n,m,r;
n=a-1000;
m=n/500;
r=n%500;
if(b=='y')
{
if(a<=1000)
{
c=13;
}
else if(a>1000)
{
if(n<=500)
{
c=17;
}
else if(m>=1&&r!=0)
{
c=13+m*4+4;
}
else if(m>=1&&r==0)
{
c=13+m*4;
}
}
}
else if(b=='n')
{
if(a<=1000)
{
c=8;
}
else if(a>1000)
{
if(n<=500)
{
c=12;
}
else if(m>=1&&r!=0)
{
c=8+m*4+4;
}
else if(m>=1&&r==0)
{
c=8+m*4;
}
}
}
printf("%d",c);
return 0;
}

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐
所有评论(0)