首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

百鸡百钱程序带注解,该如何解决

2012-02-20 
百鸡百钱程序带注解我是个初学者,不知道写的好不好,也不知道是书上的简便还是我的简便,所以发出来让大家指

百鸡百钱程序带注解
我是个初学者,不知道写的好不好,也不知道是书上的简便还是我的简便,所以发出来让大家指点下,也把这个送给没解决这个问题人,上面的是我写的,下面的是书上的.
  原题:百钱买百鸡   公鸡5块   母鸡3块   小鸡1块钱3个   问3种鸡个有多少只
  我的思路是让程序达到累计和枚举的作用

程序1   我写的
void   main()
{int   a,b,c;                             /*变量a是公鸡b是母鸡c是小鸡*/
  for(a=0;a <=19;a++)             /*公鸡应该在0-19只之间*/
        {for(b=0;b <=33;b++)     /*母鸡应该在0-33只之间*/
                {for(c=0;c <=100;c++)   /*小鸡应在0-100只之间*/
                      if(a+b+c==100&&a*5+b*3+c/3==100)   /*是否同时满足百钱与百鸡*/
                            printf( "a=%d   b=%d   c=%d\n ",a,b,c);   /*输出3种鸡的数量*/
                  }
          }
}


程序2   书上的
void   main()
{int   a=0,b,c;                         /*变量a是公鸡b是母鸡c是小鸡*/
  while(a <=19)                         /*公鸡应该小于等于19只*/
            {b=0;                             /*母鸡最少为0只*/
              while(b <=33)             /*母鸡应该小于等于33只*/
                        {c=100-a-b;     /*满足100只和公鸡母鸡确定的情况下小鸡数量*/
                          if(5*a+3*b+c/3==100)   /*鸡所花的钱数是否是百钱*/
                              printf( "a=%d   b=%d   c=%d\n ",a,b,c);     /*输出3种鸡的数量*/
                          b++;   /*母鸡递增*/
                          }
                a++               /*公鸡递增*/
                }
}

[解决办法]
程序1 容易明白.
程序2 效率上要好点.
[解决办法]
3元方程

热点排行