当前位置:首页 » 编程语言 » 百钱买百鸡c语言

百钱买百鸡c语言

发布时间: 2024-07-01 02:09:04

c语言解决百钱买鸡问题

chicks小鸡,cocks公鸡,hens

n是钱,因为1钱可买3小鸡,所以小鸡数对应钱数就是:chicks=3*n

外层遍历:买小鸡的钱,从0遍历到33(33块就99个小鸡了,明显用不了这么多,但作者为了保险吧)
内层遍历:买母鸡的个数,从0遍历到33个(33个母鸡也99块,与上面意图相同,尽量遍历到境界点,虽然有点不科学,但如果问题有解,在条件成立时加个跳出,也不碍事)

内层遍历的时候:cocks=100-hens-chicks; 公鸡=100-母鸡-小鸡,(确保三种鸡加起来是100)

if(5*cocks+3*hens+n==100&&cocks>=0) 意思是:所有的钱加起来是100并且公鸡个数不为负数

printf("%d %d %d\n",cocks,hens,chicks); //打完收工
hens++;//自增
}
n++;//自增

Ⅱ C语言中百钱百鸡的程序

#include<stdio.h>
int main()

{

int a,b,c;//各种鸡的数目
int i=0; //方程解数目
printf("百钱买百鸡,求鸡翁,鸡母,鸡雏的数目:\n");

for(a=0;a<20;a++) //外层循环控制公鸡
{
for(b=0;b<=33;b++) //内层循环控制公鸡

{
c=100-a-b; //小鸡的只数

if(c%3==0 && a*5+b*3+c/3==100)
{
//验证取c值的合理性及得到一组解的合理性
printf("%2d:鸡翁数:%2d,鸡母数:%2d,鸡雏数:%2d\n",++i,a,b,c);
}
}
}
}

Ⅲ C语言 百钱买百鸡

#include<stdio.h>

void main()

{

int a,b,c;

for(a=0;a<20;a++)//公鸡可能的只数

for(b=0;b<(100-5*a)/3;b++)//母鸡可能的只数

{ c=100-a-b;//总数为100时,小鸡的只数

if(c%3==0 && a*5+b*3+c/3==100)//若小鸡只数是3的倍数,且总价为100

printf("a=%d b=%d c=%d ",a,b,c);

}

getch();

return 0;

}

Ⅳ C语言“百钱百鸡”,用100块买100只鸡,公鸡3元1只,母鸡5元1只,小鸡1元3只。代码我已经打好了。

#include<stdio.h>
voidmain()
{
intcock=0; //公鸡的数量公鸡3元一只
inthen=0; //母鸡的数量 母鸡5元一只
intchick=0; //小鸡的数量 小鸡1元三只

for(cock=0;cock<=33;cock++)//100块最多买33只公鸡
{
for(hen=0;hen<=20;hen++) //100块最多买20只母鸡
{
for(chick=0;chick<=300;chick+=3) //100块最多买300只小鸡小鸡一定是3的倍数才可以
{
if(3*cock+5*hen+chick/3==100)//100块买100只鸡1/3结果是0,这里应该用chick/3
{
printf("公鸡的数量为:%d ",cock);
printf("母鸡的数量为:%d ",hen);
printf("小鸡的数量为:%d ",chick);
}
}
}
}
}

Ⅳ 百鸡百钱问题 c语言 递归解决 一定是递归!不要用循环!

为方便计算,把小鸡的价格定义为1,母鸡价格为9,公鸡15,这样可以把问题当作300钱买100鸡了:

#include<stdio.h>
intprice[3]={15,9,1};
intchicknum[3];
voidbuychick(intcurmoney,intci)
{
intmax,i;
max=curmoney/price[ci];
for(i=1;i<=max;++i)
{
chicknum[ci]=i;
if(2==ci)
{
if(100==chicknum[0]+chicknum[1]+chicknum[2])
if(300==chicknum[0]*price[0]+chicknum[1]*price[1]+chicknum[2]*price[2])
printf("公鸡:%4d母鸡:%4d小鸡:%4d ",chicknum[0],chicknum[1],chicknum[2]);
}
else
buychick(curmoney-chicknum[ci]*price[ci],ci+1);
}
}
intmain()
{
buychick(300,0);
return0;
}

Ⅵ c语言程序设计答案 100元买100只鸡,公鸡5元一只,母鸡3元一只,小鸡1元3只,该怎么买

写个三重循环来寻找购买方案。

#include<stdio.h>

intmain(void){

inti,j,k,count=0;

for(i=1;i<=100/5;i++)/*公鸡*/
for(j=1;j<=100/3;j++)/*母鸡*/
for(k=1;k<=100*3;k++)/*小鸡*/
if(i*5+j*3+k==100&&i+j+k*3==100){
count++;
printf("方案%d:%d只公鸡,%d只母鸡,%d只小鸡。 ",count,i,j,k*3);
printf("100只鸡=%d+%d+%d ",i,j,k*3);
printf("100元钱=%d×5+%d×3+%d/3=%d+%d+%d ",i,j,k*3,i*5,j*3,k);
printf(" ");
}
}

运行结果

热点内容
sql语句过长 发布:2024-07-02 23:24:34 浏览:982
account文件夹 发布:2024-07-02 23:07:03 浏览:929
打开网页停止脚本 发布:2024-07-02 22:55:28 浏览:696
宾馆电脑无法连接到服务器 发布:2024-07-02 22:51:15 浏览:709
ipad忘记id密码怎么办啊 发布:2024-07-02 22:43:37 浏览:438
新版uc不能缓存小说 发布:2024-07-02 22:09:55 浏览:914
linux线程函数 发布:2024-07-02 21:56:36 浏览:163
xp共享文件夹权限 发布:2024-07-02 21:43:38 浏览:476
r11忘记密码怎么办 发布:2024-07-02 21:13:25 浏览:4
大一教务网初始密码是什么 发布:2024-07-02 21:12:44 浏览:553