中M22秋C、Java入门练习 week 2

7-8 是不是太胖了

分数 5

据说一个人的标准体重应该是其身高(单位:厘米)减去100、再乘以0.9所得到的公斤数。已知市斤的数值是公斤数值的两倍。现给定某人身高,请你计算其标准体重应该是多少?(顺便也悄悄给自己算一下吧……)

输入格式:

输入第一行给出一个正整数H(100 < H ≤ 300),为某人身高。

输出格式:

在一行中输出对应的标准体重,单位为市斤,保留小数点后1位。

输入样例:

169

输出样例:

124.2

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

#include <stdio.h>
int main()
{
	int height;
	double weight;
	scanf("%d",&height);
	weight=(height-100)*0.9*2;
	printf("%.1f",weight);
	return 0;
}

7-9 求整数均值

分数 10

本题要求编写程序,计算4个整数的和与平均值。题目保证输入与输出均在整型范围内。

输入格式:

输入在一行中给出4个整数,其间以空格分隔。

输出格式:

在一行中按照格式“Sum = 和; Average = 平均值”顺序输出和与平均值,其中平均值精确到小数点后一位。

输入样例:

1 2 3 4

输出样例:

Sum = 10; Average = 2.5

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

#include <stdio.h>
 
int main()
{
    int a,b,c,d;
    int Sum;
    double Average;
    scanf("%d %d %d %d",&a,&b,&c,&d);
    Sum=a+b+c+d;
    Average=Sum/4.0;
    printf("Sum = %d; Average = %.1f",Sum,Average);
    return 0;
}

7-10 算术入门之加减乘除 (10分)
题目描述如下:

对于输入的两个整数,按照要求输出其和差积商。
输入格式:

在一行内输入两个不超过100的非负整数a和b,中间以一个空格间隔,且保证b不为0。
输出格式:

共四行,格式是:

[a] + [b] = [a+b]
[a] - [b] = [a-b]
[a] * [b] = [a*b]
[a] / [b] = [a/b]

其中,带有方括号的内容(如[a]、[b]、[a+b]等)表示相应整数或运算结果的值,在输出时要用实际的值代替。

并且:如果a能够被b整除,那么a/b应输出为整数格式,否则a/b输出为带两位小数的格式。

提示:注意表达式中的空格。
输入样例1:

6 3

输出样例1:

6 + 3 = 9
6 - 3 = 3
6 * 3 = 18
6 / 3 = 2

输入样例2:

8 6

输出样例2:

8 + 6 = 14
8 - 6 = 2
8 * 6 = 48
8 / 6 = 1.33

代码如下:

#include<stdio.h>

int main()
{
    int a = 0;
    int b = 0;

    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);

    if (a % b == 0)
    {
        printf("%d / %d = %d", a, b, a / b);
    }
    else
    {
        printf("%d / %d = %.2f", a, b, a * 1.0 / b);
    }

    return 0;
}

7-11 计算平均分

已知某位学生的数学、英语和计算机课程的成绩分别是87分、72分和93分,求该生3门课程的平均成绩(结果按整型输出)。

输入格式:

本题无输入


输出格式:

按照下列格式输出结果:

math = 87, eng = 72, comp = 93, average = 计算所得的平均成绩

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

#include<stdio.h>
int main()
{
    int math = 87,eng = 72,comp = 93;
    int average= (math + eng + comp)/3;
    printf("math = 87, eng = 72, comp = 93, average = %d",average);
    return 0;
}


7-12 日期格式化

世界上不同国家有不同的写日期的习惯。比如美国人习惯写成“月-日-年”,而中国人习惯写成“年-月-日”。下面请你写个程序,自动把读入的美国格式的日期改写成中国习惯的日期。

输入格式:

输入在一行中按照“mm-dd-yyyy”的格式给出月、日、年。题目保证给出的日期是1900年元旦至今合法的日期。

输出格式:

在一行中按照“yyyy-mm-dd”的格式给出年、月、日。

输入样例:

03-15-2017

输出样例:

2017-03-15

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

#include<stdio.h>
int main()
{
    int y, m ,d;
    scanf("%d-%d-%d", &m, &d, &y);
    printf("%d-%02d-%02d",y,m,d); 
    
    return 0;
}

  the 02 of %02d is to add o left if the value is 2 digital 

and imput num-num-num, the symbol of - is necessary

7-13 后天

如果今天是星期三,后天就是星期五;如果今天是星期六,后天就是星期一。我们用数字1到7对应星期一到星期日。给定某一天,请你输出那天的“后天”是星期几。

输入格式:

输入第一行给出一个正整数D(1 ≤ D ≤ 7),代表星期里的某一天。

输出格式:

在一行中输出D天的后天是星期几。

输入样例:

3

输出样例:

5

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

#include<stdio.h>
int main()
{
    int today;
    int b;
    scanf("%d",&today);
    b = today + 2;
    if (b <= 7)
    {
     printf("%d",b);   
    }
    else
    printf("%d",b-7);
    return 0;
}

 Or

#include<stdio.h>
int main(){
	int D;
	scanf("%d",&D);
	if(D<6)
		printf("%d",D+2);	
	else
		printf("%d",D-5);
	
	return 0;
} 

7-14 然后是几点

7-14 然后是几点

分数 15

有时候人们用四位数字表示一个时间,比如 1106 表示 11 点零 6 分。现在,你的程序要根据起始时间和流逝的时间计算出终止时间。

读入两个数字,第一个数字以这样的四位数字表示当前时间,第二个数字表示分钟数,计算当前时间经过那么多分钟后是几点,结果也表示为四位数字。当小时为个位数时,没有前导的零,例如 5 点 30 分表示为 530;0 点 30 分表示为 030。注意,第二个数字表示的分钟数可能超过 60,也可能是负数。

输入格式:

输入在一行中给出 2 个整数,分别是四位数字表示的起始时间、以及流逝的分钟数,其间以空格分隔。注意:在起始时间中,当小时为个位数时,没有前导的零,即 5 点 30 分表示为 530;0 点 30 分表示为 030。流逝的分钟数可能超过 60,也可能是负数。

输出格式:

输出不多于四位数字表示的终止时间,当小时为个位数时,没有前导的零。题目保证起始时间和终止时间在同一天内。

输入样例:

1120 110

输出样例:

1310

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB


#include<stdio.h>
int main()
{
	int t1,t2;
	int a,b,c;
	scanf("%d %d",&t1,&t2);
	a = (t1/100)*60+t1%100+t2;
	b = (a/60);
	c = a%60;
	printf("%d%02d",b,c);
	return 0;
}

remend : to make all value to be minute

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值