(2)100匹马驮100担货,已知一匹大马驮3担,一匹中马驮2担,两匹小马驮1担。试编写程序计算大、中、小马的所有可能组合数目。要求采用for语句实现。
穷举就好了
int main()
{
for(int a = 0;a<=33;a++)
for(int b=0;b<=50;b++)
for(int c=0;c<=100;c++)
if(a*3+b*2+c == 100)
printf("大马:%d,中马:%d,小马:%d\n",a,b,c);
}
#include<stdio.h>
int main()
{
int max, mid, min;
{
for(max=0;max<=33;max++)//全用大马最多33头
{
for(mid=0;mid<=50;mid++)//全用中马最多50头
{
min = 100-max-mid; //小马=总数-大马-小马
if(max*3+mid*2+min*(1/2)==100) //判断取值的大马数量能驮的数量+中马数量能驮的数量+小马数两能驮的数量是否=100
{
printf("大马=%d 中马=%d 小马=%d\n",max,mid,min);//成立则分别打印大、中、小马的数量
}
}
}
}
return 0;
}