用C语言编写,穷举法:百钱买百鸡
1、打开visual C++ 6.0-文件-新建-文件-C++ Source File


2、题目:
/* 百钱买百鸡
每只大公鸡5个钱,每只母鸡3个钱,每3只小鸡1个钱,
现有100个钱想买100只鸡,如何买?有多少种方法?*/

3、输入预处理命令和主函数:
#include<stdio.h> /*输入输出头文件*/
void main() /*空类型:主函数*/

4、定义变量和输出文字提示:
int x,y,z,n=0; /*定义变量的数据类型为整型*/
printf("买法:\n"); /*输出文字提示*/

5、确定大公鸡、母鸡、小鸡的数量:
for(x=0;x<=19;x++) /*确定大公鸡数量*/
for(y=0;y<=33;y++) /*确定母鸡数量*/
{
z=100-x-y; /*确定小鸡数量*/

6、判断100个钱是否买了100只鸡:
if(5*x+3*y+z/3.0==100) /*判断100个钱是否买了100只鸡*/
{
n++; /*是,计算有多少种买法*/
printf("%d %d %d\n",x,y,z); /*输出买法*/
}
}
printf("有%d种买法\n",n); /*输出有多少种买法*/

7、完整的源代码:
/* 百钱买百鸡
每只大公鸡5个钱,每只母鸡3个钱,每3只小鸡1个钱,
现有100个钱想买100只鸡,如何买?有多少种方法?*/
#include<stdio.h> /*输入输出头文件*/
void main() /*空类型:主函数*/
{
int x,y,z,n=0; /*定义变量的数据类型为整型*/
printf("买法:\n"); /*输出文字提示*/
for(x=0;x<=19;x++) /*确定大公鸡数量*/
for(y=0;y<=33;y++) /*确定母鸡数量*/
{
z=100-x-y; /*确定小鸡数量*/
if(5*x+3*y+z/3.0==100) /*判断100个钱是否买了100只鸡*/
{
n++; /*是,计算有多少种买法*/
printf("%d %d %d\n",x,y,z); /*输出买法*/
}
}
printf("有%d种买法\n",n); /*输出有多少种买法*/
}
