主题:如何用C编写:有红、绿、蓝、白4种颜色的小球各一个,每次从中取出3个,列出3个小球不同颜色的所有可能
ydwzj
[专家分:10] 发布于 2012-05-25 13:53:00
如何用C语言编写:布袋中有红、绿、蓝、白4种颜色的小球各一个,每次从中取出3个,列出3个小球不同颜色的所有可能的取法。想了很久,不能突破的问题就是如何体现随机抽取3个小球。求助高手。
回复列表 (共3个回复)
沙发
lnking [专家分:10] 发布于 2012-05-25 17:38:00
#include <iostream>
#include <string>
using namespace std;
void main()
{
enum color{red,yellow,blue,white};
enum color pri;
int i,j,k;
n=0;
for(int i=red;i<=white;i++)
for(int j=red;j<=white;j++)
if(i!=j)//前两个求不同
for(int k=red;k<=white;k++)
if(k!=i&&k!=j)//第三个球不同于前两个球
n=n+1;
cout<<endl;
cout<<"total:"<<n<<endl;
}
板凳
suosuopuo [专家分:40] 发布于 2012-05-27 17:05:00
4*3*2 = 24
3 楼
vip_ [专家分:0] 发布于 2012-05-27 17:53:00
main()
{
int i,j,k;
printf("\n");
for(i=1;i<5;i++) /*以下为三重循环*/
for(j=1;j<5;j++)
for (k=1;k<5;k++)
{
if (i!=k&&i!=j&&j!=k) /*确保i、j、k三位互不相同*/
printf("%d,%d,%d\n",i,j,k);
}
}
我来回复