从3个红球,5个白球,6个黑球中任取8个球,其中必须有白球,输出所有可能的方案

本文通过C语言程序展示了如何找出所有可能的红球、白球和黑球组合,使得三者的总数等于8。同时探讨了如何调整代码以满足特定条件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

如题,代码为 

#include<stdio.h>
int main()
{
	int red,white,black;
	for(red=0;red<4;red++)
	   for(white=1;white<6;white++)
	       for(black=0;black<6;black++)
	          if(red+white+black==8)
	             printf("红球=%d\t白球=%d\t黑球=%d\n",red,white,black);
}

结果如下 

红球=0	白球=3	黑球=5
红球=0	白球=4	黑球=4
红球=0	白球=5	黑球=3
红球=1	白球=2	黑球=5
红球=1	白球=3	黑球=4
红球=1	白球=4	黑球=3
红球=1	白球=5	黑球=2
红球=2	白球=1	黑球=5
红球=2	白球=2	黑球=4
红球=2	白球=3	黑球=3
红球=2	白球=4	黑球=2
红球=2	白球=5	黑球=1
红球=3	白球=1	黑球=4
红球=3	白球=2	黑球=3
红球=3	白球=3	黑球=2
红球=3	白球=4	黑球=1
红球=3	白球=5	黑球=0

 如果“其中必须有白球”这个条件,改为“其中必须有红球”,那么,将for循环里面的red=0改为r=1且white=1改为white=0即可,改成“其中必须有黑球”也同理。

————————————————————————————————

代码中“black<6”的部分确实需要改为“black<7”,多谢评论区朋友的指正。

为我个人的疏忽向各位浏览此文章的朋友致歉。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值