PTA作业笔记——简单的计算

7-10 整数算术运算

本题要求编写程序,计算并输出2个正整数的和、差、积、商与余数。题目保证输入和输出全部在整型范围内。
在这里插入图片描述
本题需注意的是输出格式,最好是原样赋值题目要求输出

#include<stdio.h>
int main()
{
    int a, b;
    scanf("%d %d", &a, &b);
    printf("%d + %d = %d\n", a, b, a + b);
    printf("%d - %d = %d\n", a, b, a - b);
    printf("%d * %d = %d\n", a, b, a * b);
    printf("%d / %d = %d\n", a, b, a / b);
    printf("%d %% %d = %d", a, b, a % b);
    return 0;
}

7-11 猫是液体

在这里插入图片描述

#include<stdio.h>
int main()
{
    int a,b,c;
    scanf("%d %d %d",&a,&b,&c);
    printf("%d",a*b*c);
    return 0;
}

7-11 猫是液体

在这里插入图片描述

#include<stdio.h>
int main()
{
    int a;
    scanf("%d",&a);
    printf("Celsius = %d",5*(a-32)/9);
    return 0;
}

7-13 计算4个整数的平均值

从键盘读入4个整数,输出平均值。
小贴士:所有符号是中文状态,Average中A是大写 ,除号不要写反了,/和\是不一样的。
在这里插入图片描述

#include<stdio.h>
int main()
{
    double a,b,c,d;
    scanf("%lf %lf %lf %lf",&a,&b,&c,&d);
    printf("Average为(%.0lf+%.0lf+%.0lf+%.0lf)/4=%.2lf",a,b,c,d,(a+b+c+d)/4);
    return 0;
}

7-14 公元前后日期格式化

本题目要求读入一个日期,格式为:年/月/日,输出它是公元前还是公元后年-月-日,如果年份>0表示公元后,年份<0表示公元前。月和日必须输出2位,不足以0补齐。
输出格式:
输出此日期是公元前还是公元后某年某月某日,月和日必须输出2位数,不足以0补齐。年份按实际输出。
在这里插入图片描述
本题中开始涉及到了另一个头文件:math.h,这个头文件中包含了很多数学函数,本题使用的fbs函数用来取绝对值
除了使用函数外还可以将负数取相反数,作用是一样的

#include<stdio.h>
#include<math.h>
int main()
{
    int year,mon,day;
    scanf("%d/%d/%d",&year,&mon,&day);
    if(year<0)
        printf("公元前%d年%02d月%02d日",abs(year),mon,day);
    else
        printf("公元后%d年%02d月%02d日",year,mon,day);
    return 0;
}

7-15 A除以B

真的是简单题哈 —— 给定两个绝对值不超过100的整数A和B,要求你按照“A/B=商”的格式输出结果。
输入格式:
输入在第一行给出两个整数A和B(−100≤A,B≤100),数字间以空格分隔。
输出格式:
在一行中输出结果:如果分母是正数,则输出“A/B=商”;如果分母是负数,则要用括号把分母括起来输出;如果分母为零,则输出的商应为Error。输出的商应保留小数点后2位。
在这里插入图片描述
需要注意的是要求除完了出现小数,但原本数字又需要整数输出,可以采用强制转换的方法,将变量转换过来。

#include<stdio.h>
int main()
{
    int a,b;
    scanf("%d %d",&a,&b);
    if(b==0)
        printf("%d/%d=Error",a,b);
    else if(b<0)
        printf("%d/(%d)=%.2lf",a,b,a/(double)b);
    else
        printf("%d/%d=%.2lf",a,b,a/(double)b);
    return 0;
}

7-18 出租车计价

本题要求根据某城市普通出租车收费标准编写程序进行车费计算。具体标准如下:

起步里程为3公里,起步费10元;
超起步里程后10公里内,每公里2元;
超过10公里以上的部分加收50%的回空补贴费,即每公里3元;
营运过程中,因路阻及乘客要求临时停车的,按每5分钟2元计收(不足5分钟则不收费)。

输入格式:

输入在一行中给出输入行驶里程(单位为公里,精确到小数点后1位)与等待时间(整数,单位为分钟),其间以空格分隔。
输出格式:
在一行中输出乘客应支付的车费(单位为元),结果四舍五入,保留到元。
在这里插入图片描述

#include<stdio.h>
#include<math.h>
int main()
{
    double x, y, q;
    int t,a;
    scanf("%lf %d", &x, &t);
    if (x <= 3)
        y = 10;
    else if (x > 3 && x <= 10)
        y = 2 * x + 4;
    else
        y = 3 * x - 6;

    q = 2 * (t / 5);
    a = round(y + q);//用于四舍五入到最接近的
    //返回最接近的整数值x,中途情况从零舍入。
    printf("%d",a);
    return 0;
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值