李永乐 数学讲师
广受学生信赖的“线代王”

预约

24考研计算机C语言编程问题知识点:打靶问题

2022-12-06 12:03:48 来源:天任考研  

天任考研小编为大家整理了24考研计算机C语言编程问题知识点:打靶问题相关内容,为报考计算机专业的考生们提供指导。更多有关计算机考研干货可关注考研备考栏目。

 

24考研计算机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;

}


专业课.jpg

 

以上是天任考研小编为大家带来的24考研计算机C语言编程问题知识点:打靶问题希望考生们都能备考顺利,考上自己心仪的院校。

热门好课推荐

MORE

2025考研英语无忧班

时长:468课时


  • 刘晓艳

  • 张超

3000元
已报501人

2025考研数学无忧班

时长:604课时


  • 李永乐

  • 宋浩

4000元
已报198人

2025考研政治无忧班

时长:225.5课时


  • 孔昱力

2000元
已报337人

2025考研管综无忧班

时长:440h


  • 吕建刚

3980元
已报112人