C语言问题程序设计题例题 4-8 穷举算法 这一题 那两句for是什么意思 求详细的解答谢谢

2025-04-05 08:51:08
推荐回答(2个)
回答1:

一、代码解释:

  1. for(m=0 ;m<=9 ;m++)

    解释:m(根据题意代表男人人数),m从0遍历到9

  2. for(w=0 ;w<=12 ;w++)

    解释:w(根据题意代表女人人数),w从0遍历到12 

  3. printf里的“\t”表示Tab键的大空格(显示得好看一些)

二、程序思路

  1. 很简单暴力枚举,因为男+女+小孩=36,那么男人可能是0~9个(4*9=36,所以最多9个男人),同理女人可能是0~12个(12*3=36)。

  2. 用两个for循环嵌套来表示:男0~9人,和女0~12人的任意组合状态,用36-男-女即为小孩人数,然后计算总的搬砖数量,看看符不符合36块砖,符合则显示结果,注意该方程的解可能不止一个哦!所以显示了结果还继续算下去,直到遍历完所有组合。

回答2:

\t水平制表符,调至下一输出区开头
两个for分别控制全是男人或者全是女人的假设