2020计算机考研复习一定要打好基础,复习到位,下面中公考研网校小编为参加2020考研的考生整理“2019考研之C语言编程题目考试知识点-打靶问题”相关内容,希望能对各位考研人有所帮助。

2019考研之C语言编程题目考试知识点-打靶问题

问题描述:

射击运动员10枪打90环的打发有多少种?用一段程序实现,将每种打发打印出来。(每法成绩均为整数,且在0到10环之间,可为0环也可为10环)。

解题思路:使用递归思想

首先考虑到一共要打十枪。则可以分三种情况来考虑:

1.如果当前超过了十枪或者积分超过了给定值,则返回

2.如果当前为第十枪,判断后一枪的积分是否有可能达到给定值(0~10)

如果可以,可能值加1,然后返回;否则直接返回。

3.其他情况下,继续递归;

参考代码:

#include

using namespace std;

int sum=0;

int SCORE=90;

void compute(int num,int scores)

{

if(num<=0||scores>SCORE)return;

if(num==1)

{

if(scores+10>=SCORE)sum++;

return;

}

for(int i=0;i<=10;++i)

{compute(num-1,scores+i);}

}

int main()

{

compute(10,0);

cout<

return 0;

}

以上就是中公考研网校小编整理的“2019考研之C语言编程题目考试知识点-打靶问题”文章,更多2020计算机考研考试题型请访问中公考研网校计算机考研题库频道!

相关推荐:

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐