#include<stdio.h>
int num=0; //表示种类个数
//n表示每次选择point点牌的数量
//point表示牌的点数
//sum为13,每个人发13张牌
void card(int n,int point,int sum)
{
sum+=n;
//递归结束条件
if(sum==13)
{
num++;
sum=0;
return;
}
if(sum>13)
{
return;
}
if(point==13)
{
return;
}
for(int i=0; i<=4; i++)
{
card(i,point+1,sum);
}
}
int main(void)
{
int sum=0; //牌数=13
int point=0; //点数<=13
card(0,point,sum);
printf("可能的种数为:%d",num);
return 0;
}
07-02
1567
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)
06-10
231
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)