无解时如何输出?题目如下

公鸡一个五块钱,母鸡一个三块钱,小鸡三个一块钱,现在要用一百块钱买一百只鸡,问公鸡、母鸡、小鸡各多少只?
现求X元能否买X只鸡,若无法购买,则输出"无解"。
【输入说明】
输入只有一个数字,表示X
【输出说明】
列出所有的可能性。按照公鸡,母鸡,小鸡由少到多的顺序输出。每种可能单独一行。
【样例输入】
100
【样例输出】
公鸡0,母鸡25,小鸡75
公鸡4,母鸡18,小鸡78
公鸡8,母鸡11,小鸡81
公鸡12,母鸡4,小鸡84

img


当输入100,可得示例答案,可是输入1,应该是无解,为什么不会输出无解呢?

f没有赋初值,所以它是个内存里的随机数,也许是1000000,也可能是-808908098
你想用它累计,你需要先把它赋值成0

img


#include <stdio.h>
int main()
{
  int x,cout=0;
  int rooster,hen,chick;
  scanf("%d",&x);
      for(rooster=0;rooster<=20;rooster++)
        for(hen=0;hen<=33;hen++)
        {
            chick=100-rooster-hen;
            if(5*rooster+3*hen+chick/3.0==x)
            {
                printf("公鸡=%d,母鸡=%d,小鸡=%d\n",rooster,hen,chick);
                cout++;
            }
        }
    if(cout==0)
    printf("无解"); 
}   

我们可以设置一个值count来记录他的次数,如果为0就是无解

f没有初始化 可以是任何值