当前位置:   article > 正文

C/C++国王发金币 2023年5月电子学会青少年软件编程(C/C++)等级考试一级真题答案解析_2023等级考试c++一级金币答案

2023等级考试c++一级金币答案

目录

C/C++国王发金币

一、题目要求

1、编程实现

2、输入输出

二、解题思路

1、案例分析

三、程序代码

四、程序说明

五、运行结果

六、考点分析


C/C++国王发金币

2023年5月 C/C++编程等级考试一级编程题

一、题目要求

1、编程实现

国王将金币作为工资,发放给忠诚的骑士。第一天,骑士收到一枚金币;之后两天(第二天和第三天)里,每天收到两枚金币;之后三天(第四、五、六天)里,每天收到三枚金币;之后四天(第七、八、九、十天)里,每天收到四枚金币……这种工资发放模式会一直这样延续下去:当连续N天每天收到N枚金币后,骑士会在之后的连续N+1天里,每天收到N+1枚金币(N为任意正整数)。

你需要编写一个程序,确定从第一天开始的给定天数内,骑士一共获得了多少金币。

时间限制:10000

内存限制:65536

2、输入输出

输入描述:只有一行,一个整数(范围1到10000),表示天数。

输出描述:只有一行,一个整数,即骑士获得的金币数。

输入样例:

6

输出样例:

14

二、解题思路

1、案例分析

  1. 从给定题目的初步分析可以看出,首先需要从键盘获取对应的天数
  2. 可以使用int类型进行变量的声明,用来保存键盘输入的数据
  3. 然后可以通过嵌套for循环来实现第一天1金币,第2天2金币...
  4. 但是这里需要注意的是,在进行嵌套循环的时候要有一个变量用来标记已经加到第几天了
  5. 如果这个标记的天数等于输入的天数就需要结束循环,而不能一直往后家
  6. 所以需要再额外声明一个标记天数变量,同时结合if语句,在满足条件后用break语句退出循环
  7. 最后输出最终的金币数量即可

三、程序代码

  1. #include<iostream>
  2. using namespace std;
  3. int main()
  4. {
  5. //day是天数,gold获得金币数,flag用于标记第几天
  6. int day,gold=0,flag=0;
  7. cin>>day;
  8. for(int i=1;i<=day;i++)
  9. {
  10. for(int j=0;j<i;j++)
  11. {
  12. gold += i;
  13. flag ++;
  14. if(flag == day)
  15. {
  16. break;
  17. }
  18. }
  19. if(flag == day)
  20. {
  21. break;
  22. }
  23. }
  24. cout<<gold;
  25. return 0;
  26. }

四、程序说明

  1. 初始化day, gold和flag。其中day通过cin读入,gold用于累计金币数量,flag用于标记天数。
  2. 外层循环根据day的值运行,内层循环根据外层循环的当前值运行。
  3. 在内层循环中,gold每次增加i,flag每次增加1。当flag等于day时,结束内层循环。
  4. 同时外层循环也需要判断flag等于day时,结束外层循环;不然内层循环结束外层循环依然会继续执行,再次执行到内层循环,这样会一直到外层循环结束;也就不符合我们的题目要求,这点也是本题的难点
  5. 最后输出gold的值。

五、运行结果

  1. 6
  2. 14

六、考点分析

难度级别:中等,本题相对有点难,难在如何实现1天加1,第2、3天加2...,具体主要考查如下:

  1. 分析题目,找到解题思路
  2. 变量的声明和使用
  3. 输入流对象cin的使用,与流提取运算符 >>结合使用从键盘读取想要的数据
  4. for循环及嵌套for循环的使用,知道循环次数的时候推荐使用
  5. if条件判断语句,满足一定条件才能执行后面的语句
  6. break语句的使用,退出最近一次循环
  7. 输出流对象cout的使用,与流插入运算符 << 结合使用将对象输出到终端显示
  8. 充分掌握变量定义和使用、条件判断语句、循环语句和算法知识的使用及输入输出

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

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/169734?site
推荐阅读
相关标签
  

闽ICP备14008679号