火柴棒的问题c语言(枚举)
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
⽕柴棒的问题c语⾔(枚举)规则:
1、a + b = c;
2、⽤完⽕柴棒;
代码如下:
1 #include <stdio.h>
2int fun(int x);
3
4int main()
5 {
6int a,b,c,sum=0,m;
7 scanf("%d",&m); //输⼊⽕柴的根数
8for(a=0;a<=1111;a++)
9 {
10for(b=0;b<=1111;b++)
11 {
12 c=a+b;
13if(fun(a) + fun(b) +fun(c)==m-4)
14 {
15 printf("%d + %d = %d\n",a,b,c);
16 sum++;
17 }
18 }
19 }
20 printf("total %d\n",sum); //总的⽅法
21return0;
22 }
23
24int fun(int x)
25 {
26int num=0;
27char a[]={6,2,5,5,4,5,6,3,7,6};
28while((x/10)!=0)
29 {
30 num += a[x%10];
31 x/=10;
32 }
33 num +=a[x];
34return num;
35 }
该⽅法视 a+b=c与b+a=c为不同⽅法。