吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1279|回复: 8
收起左侧

[已解决] C语言求助,百元买百鸡问题

[复制链接]
Email⊕ 发表于 2021-7-3 21:07
这是我的代码

/
中国古代数学家张丘建在他的《算经》中提出了一个著名的“百钱买百鸡问题”,
鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,值钱一,百钱买百鸡,问翁、母、雏各几何?
/

include <stdio.h>

int main()
{
int i, j, k;
for (i = 0; i <= 20; i++)
for (j = 0; j <= 33; j++)
for (k = 3; k <= 99; k++)
if(5j+3j+k/3==100)
if (i+j+k==100)
if(k%3==0)
printf("公鸡%d 母鸡%d 小鸡%d", i, j, k);
return 0;
}



下面是网上的代码

include <stdio.h>

int main()
{
int cock,hen,chick;   /定义变童为基本整型/
for(cock=0;cock<=20;cock++)   /公鸡范围在 0~20 之间/
for(hen=0;hen<=33;hen++)   /母鸡范围在 0~33 之间/
for(chick=3;chick<=99;chick++)   /小鸡范围在 3~99 之间/
if(5cock+3hen+chick/3==100)   /判断钱数是否等于 100/
if(cock+hen+chick==100)   /判断购买的鸡数是否等于 100/
if(chick%3==0)   /判断小鸡数是否能被 3 整除/
printf("公鸡:%d,母鸡:%d,小鸡:%d\n",cock,hen,chick);
return 0;
}


我感觉我的代码跟网上的代码已经一样了,为什么运行结果不一样?

这是网上的代码

这是网上的代码

这是我的代码

这是我的代码

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

苏紫方璇 发表于 2021-7-3 23:34
if(5j+3j+k/3==100)   改成if(5i+3j+k/3==100)
pdln 发表于 2021-7-4 00:22
" if(5j+3j+k/3==100)",i是5元的鸡,你把变量搞错了
k++改成k+3也行,就不用最后去判断了,少行代码
tester001 发表于 2021-7-4 11:35
int main()
{
int i, j, k;
for (i = 0; i <= 20; i++)
for (j = 0; j <= 33; j++)
for (k = 3; k <= 99; k++)
if(5i+3j+k/3==100)
if (i+j+k==100)
if(k%3==0)
printf("公鸡%d ,母鸡%d ,小鸡%d", i, j, k);
return 0;
}
tester001 发表于 2021-7-4 11:36
第一个if语句那里出错了,把第一个j改成i就行了
 楼主| Email⊕ 发表于 2021-7-5 16:40
苏紫方璇 发表于 2021-7-3 23:34
if(5j+3j+k/3==100)   改成if(5i+3j+k/3==100)

非常感谢
 楼主| Email⊕ 发表于 2021-7-5 16:41
pdln 发表于 2021-7-4 00:22
" if(5j+3j+k/3==100)",i是5元的鸡,你把变量搞错了
k++改成k+3也行,就不用最后去判断了,少行代码

非常感谢
 楼主| Email⊕ 发表于 2021-7-5 16:41
tester001 发表于 2021-7-4 11:36
第一个if语句那里出错了,把第一个j改成i就行了

非常感谢
jjyywg 发表于 2021-7-8 15:09
这个不错用来解题。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-26 00:48

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表