您的位置:首页 > 其它

打靶问题(递归)

2009-03-13 12:25 197 查看
一个射击运动员打靶 靶一共有十环 连开10枪击中90环的可能性组合有多少种?

#include <stdio.h>
int record[10];
int sum;

void print()
{
int i;
for(i = 0; i < 10; i++)
{
printf("%-3d ", record[i]);
}
sum++;
printf("/n");
}

void shoot(int socre,int num)
{
int i;
if(socre < 0 || socre > num * 10)
return;
if(num == 1)
{
record[10 - num] = socre;
print();
return;
}
for(i = 0; i <= 10; i++)
{
record[10 - num] = i;
shoot(socre - i, num - 1);
}
}

int main(char* argv, int argc)
{
shoot(90, 10);
printf("It has %d compound", sum);
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: