百钱买百鸡问题:公鸡五文钱一只,母鸡三文钱一只,小鸡三只一文钱,用 100 文钱买 100 只鸡,公鸡、母鸡、小鸡各买多少只?
本程序要求解的问题是:给定一个正整数 nn,用 nn 文钱买 nn 只鸡,问公鸡、母鸡、小鸡各买多少只?
解法如下:
#include<stdio.h>
int main(){
int j,k,l; //定义公鸡数,母鸡书和小鸡数
int n; //定义输入的金钱数和鸡的总数
int sum=0; //定义一个判断工具
scanf("%d",&n); //输入n
for(j=0;j<n;j++){
for(k=0;k<n;k++){
for(l=0;l<n;l++){
if(j*5+k*3+l/3==n&&j+k+l==n&&l%3==0) { //判断鸡的总数是否满足条件
printf("%d %d %d\n",j,k,l); //讲满足的条件输出
sum++; //这里判断if条件是否执行
}
}
} //利用for的嵌套循环一直寻找满足if的鸡得数量
}
if(sum==0){ //若sum==0,则说明上面if没有执行,所以没有符合条件的鸡总数,所以无解
printf("No Answer.");
}
return 0;
}
注:这几sum==0就是直平时数学上的sum=0;因为在C语言中直接输入sum=0是赋值不是等于;