第3周编程题在线测试

1学分绩计算(3分)

已知某大学期末考试学分绩的计算公式为:学分绩 =(工科数学 * 5 + 英语 * 1.5 + 线性代数 * 3.5) / 10请编程从键盘按顺序输入某学生的工科数学、英语和线性代数成绩,计算并输出其学分绩。

以下为程序的运行结果示例:

Input math1, English and math2:80,70,100↙

Final score = 85.50

输入提示信息:“Input math1, English and math2:”

输入格式: “%d,%d,%d”

输出格式:“Final score = %.2f\n”

#include <stdio.h>
int main()
{   int grade1,grade2,grade3;
    float sum;
    printf("Input math1, English and math2:");
    scanf("%d,%d,%d",&grade1,&grade2,&grade3);
    sum=(grade1*5+grade2*1.5+grade3*3.5)/10;
    printf("Final score = %.2f\n",sum);
}

2一尺之捶,日取其半

我国古代著作《庄子》中记载道:“一尺之捶,日取其半,万世不竭”。其含义是:对于一尺的东西,今天取其一半,明天取其一半的一半,后天再取其一半的一半的一半总有一半留下,所以永远也取不尽。请编写一个程序,使其可以计算出一条长为m的绳子,在n天之后剩下的长度。

运行结果示例1:

Input length and days:12,5↙

length=0.37500

运行结果示例2:

Input length and days:57.6,7↙

length=0.45000

输入提示信息:“Input length and days:”

输入格式: “%f,%d”

输出格式:“length=%.5f\n”

#include <stdio.h>
int main()
{   float m;
    int n,i;
    printf("Input length and days:");
    scanf("%f,%d",&m,&n);
    for(i=1;i<=n;i++)
        m=m/2;
    printf("length=%.5f\n",m);
}

3网购打折商品V1.0(4分)

某网上购物网站对用户实行优惠,买家购物货款p越多,则折扣越多。今天正值该网站优惠折扣日,买家可以获得8%的折扣。请编程从键盘输入买家购物货款p,计算并输出买家折扣后实际应付出的价钱。

注:程序中的数据类型为float。

程序的运行结果示例1:

Input payment p:300↙

price = 276.0

程序的运行结果示例2:

Input payment p:1299.8↙

price = 1195.8

输入提示信息:“Input payment p:”

输入格式: “%f”

输出格式:“price = %.1f\n” (注:等号左右均有空格)

#include <stdio.h>
int main()
{   float price;
    printf("Input payment p:");
    scanf("%f",&price);
    price=price*(1-0.08);
    printf("price = %.1f\n",price);
}

4计算时间差V1.0(4分)

编程从键盘任意输入两个时间(例如4时55分和1时25分),计算并输出这两个时间之间的间隔。要求不输出时间差的负号。

程序的运行结果示例1:

Input time one(hour, minute):4,55↙

Input time two(hour, minute):1,25↙

3 hour 30 minute

程序的运行结果示例2:

Input time one(hour, minute):1,56↙

Input time two(hour, minute):3,25↙

1 hour 29 minute

输入提示信息:“Input time one(hour, minute):”

           "Input time two(hour, minute):"

输入格式:"%d,%d"

输出格式:"%d hour %d minute\n"

#include <stdio.h>
main(){
         int h1,h2,m1,m2,s,t1,t2;
         printf("Input time one(hour, minute):");
         scanf("%d,%d",&h1,&m1);
         printf("Input time two(hour, minute):");
         scanf("%d,%d",&h2,&m2);
         s=(h1*60+m1)-(h2*60+m2);
         if(s<0)    s=-s;
         t1=s/60;
         t2=s%60;
         printf("%d hour %d minute\n",t1,t2);
  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值