【信息奥赛一本通】2071:【例2.14】平均分

文章介绍了如何使用C++编程来计算含有男女同学的班级平均分。提供了两种方法,一种是通过强制类型转换将整数乘积转换为实数进行平均计算,另一种是通过乘以1.0来实现同样的效果。文章强调了整数除法与浮点数除法的区别以及C++中的强制类型转换知识点。
摘要由CSDN通过智能技术生成

 【题目描述】

       已知某班有男同学x位,女同学y位,x位男生平均分是87分,y位女生的平均分是85,问全体同学平均分是多少分?

【输入】

        男女同学人数x,y。

【输出】

        平均分(保留4位小数)。

【输入样例】

2 3

【输出样例】

85.8000

【源代码】

方法一:强制数据类型转换

#include<bits/stdc++.h>
using namespace std;
int main()
{
	int x, y;
	cin >> x >> y;
	double s = (double)(x * 87 + y  * 85) / ( x + y);//强制数据类型转换 
	cout << fixed << setprecision(4) << s;
    return 0;
}

方法二:乘以1.0整数变实数

#include<bits/stdc++.h>
using namespace std;
int main()
{
	int x, y;
	cin >> x >> y;
	double s = 1.0 * (x * 87 + y  * 85) / ( x + y);//可以乘1.0整数变实数 
	printf("%.4lf",s);
    return 0;
}

【知识点小结】

   知识点一:“/ ”

        功能与c++中的 / ”,两个整数之间进行“/”的时候是取整运算,与数学中的除法存在差异,当两个数为实数的时候进行/ ”运算时就与数学中的除法相同了。

   知识点二:强制类型转换

        在C++语言中,还允许强制类型转换。强制类型转换就是将某一数据的数据类型转换为指定的另一种数据类型。注意强制类型转换只是临时转换,强制类型转换运算符组成的运算表达式的一般形式为:

(类型名)(表达式);
例如(int)(3.5)输出的值为3。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值