weixin_43573137 2018-12-15 15:14 采纳率: 0%
浏览 1026

百鸡百钱问题,为什么我运行显示无输出?

公鸡每只5元,母鸡每只3元,小鸡3只1元。用100元买100只鸡,问公鸡、母鸡和小鸡各能买多少只?
#include
main()
{
int x, y, z;
for (x = 0; x <= 20; x++);
{
for (y = 0; y <= 33; y++);
{
z = 100 - x - y;
if (5 * x + 3 * y +z / 3.0 == 100)
{
printf("x=%d, y=%d, z=%d\n", x, y, z);
}
}
}
}

  • 写回答

1条回答 默认 最新

  • threenewbee 2018-12-15 15:55
    关注

    if (5 * x + 3 * y +z / 3.0 == 100)
    浮点数存在精度误差,不能直接比较。你可以将等号左右两边x3
    if (15 * x + 9 * y +z == 300)

    for (x = 0; x <= 20; x++);
    for (y = 0; y <= 33; y++);
    这里的分号都是多余
    for (x = 0; x <= 20; x++)
    for (y = 0; y <= 33; y++)

    评论

报告相同问题?

悬赏问题

  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大
  • ¥15 import arcpy出现importing _arcgisscripting 找不到相关程序