C++统计考试成绩 2023年信息素养大赛复赛 C++小学组 算法创意实践挑战赛 真题详细解析

目录

C++统计考试成绩

一、题目要求

1、编程实现

2、输入输出

二、算法分析

三、程序编写

四、运行结果

五、考点分析

六、 推荐资料

1、C++资料 

2、Scratch资料

3、Python资料


C++统计考试成绩

2023年信息素养大赛 C++复赛真题

一、题目要求

1、编程实现

期末考试结束了,老师要统计班里学生的考试成绩分布,已知每个同学的考试成绩为在 0 到 100 分之间的整数,设计一个程序,输入每个同学的成绩,计算出在平均成绩(成绩平均值向下取整)之上的 (大于等于平均成绩)和在平均成绩之下 的 (小于平均成绩)的同学的人数。

2、输入输出

输入描述:第一行 n为学生成绩个数,0<n<50。
第二行,由空格隔开的每个同学的成绩,为 1到 100 间的整数。

输出描述:两个整数,由空格隔开,为平均分以上人数和平均分以下人数。

输入样例:

12
100 80 93 66 73 50 96 100 84 47 97 71

输出样例:

7 5

二、算法分析

  1. 从给定题目的初步分析可以看出,本题主要是对有限的数据进行处理
  2. 可以使用简单的一维数组来保存学生成绩,在输入成绩的时候就可以对成绩进行求和
  3. 所有成绩输入完成,即可求出对应的平均成绩
  4. 接着只需要再次遍历所有的成绩,并依次和平均成绩进行比较,对应的统计变量增加即可

三、程序编写

#include<iostream>
using namespace std;
int main()
{
	int n,sum = 0,resup = 0,resdown = 0,avg;
	cin >> n;
	int score[n] = {0};
	for(int i = 0;i < n;i++)
	{
		cin >> score[i];
		sum += score[i];
	}
	avg = sum / n;
	for(int i = 0;i < n;i++)
	{
		if(score[i] >= avg)
			resup++;
		else
			resdown++;
	}
	cout << resup << ' ' << resdown << endl;
	return 0;
}  

 本文作者:小兔子编程 作者首页:https://blog.csdn.net/frank2102

四、运行结果

12
100 80 93 66 73 50 96 100 84 47 97 71

7 5

五、考点分析

难度级别:一般,这题相对而言还是比较简单的,具体主要考察如下:

  1. 充分掌握变量/数组的定义和使用
  2. 学会输入流对象cin的使用,从键盘读入相应的数据
  3. 学会for循环的使用,在确定循环次数的时候推荐使用学会
  4. 学会while循环的使用,在不确定循环次数的时候推荐使用
  5. 学会if条件判断语句的使用,满足一定条件才能执行后面的语句
  6. 学会if...else...双分支语句的使用,条件满足执行一种处理,不满足执行另一种处理
  7. 掌握输出流对象cout的使用,与流插入运算符 << 结合使用将对象输出到终端显示
  8. 学会分析题目,算法分析,将复杂问题模块化,简单化,从中找到相应的解题思路
  9. 充分掌握变量定义和使用、分支语句、循环语句和简单算法知识的使用及输入输出的用法

PS:方式方法有多种,小朋友们只要能够达到题目要求即可!

六、 推荐资料

1、C++资料 

    2、Scratch资料

    3、Python资料

    评论
    添加红包

    请填写红包祝福语或标题

    红包个数最小为10个

    红包金额最低5元

    当前余额3.43前往充值 >
    需支付:10.00
    成就一亿技术人!
    领取后你会自动成为博主和红包主的粉丝 规则
    hope_wisdom
    发出的红包

    打赏作者

    小兔子编程

    您的鼓励是我创作优质案例的动力

    ¥1 ¥2 ¥4 ¥6 ¥10 ¥20
    扫码支付:¥1
    获取中
    扫码支付

    您的余额不足,请更换扫码支付或充值

    打赏作者

    实付
    使用余额支付
    点击重新获取
    扫码支付
    钱包余额 0

    抵扣说明:

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

    余额充值