枚举类型的应用


口袋中有红、黄、蓝、白、黑5种颜色的球若干。每次从口袋中任意取出3个球,问得到3中不同颜色的球的可能取法,输出每种排列的情况。

分析:球的颜色只有5种,每一个球的颜色只能是这5种之一,因此可以用枚举类型变量来处理。

#include<iostream>
using namespace std; 
int main (){
	enum {red=1,yellow,blue, white ,black};
	int i,j,k,loop;
	int n=0;
	int pri;
	for(i=red;i<=black;++i){
		for(j=red;j<=black;j++){
			if(i!=j){
				for(k=red;k<black;k++){
					if((k!=j)&&(k!=i)){
					  n++; 
					  for(loop=1;loop<=3;loop++){
						  switch(loop){
						  case 1: pri=i;break;
						  case 2: pri=j;break;
						  case 3: pri=k;break;
						  default: break;					  
						  }
						  switch(pri){
						  case red: 
							  cout<<" red "; break;
						  case yellow: 
							  cout<<" yellow ";break;
						  case blue:
							  cout<<" blue ";break;
						  case white:
							  cout<<" white "; break;
						  case black: 
							  cout<<" black ";break;
						  default : break;
					      }					
                     }
				    cout<<n<<endl;
				
				
				}
			
			
			}				
		
		}	
	}


}
cout<<"total: "<<n<<endl;
return 0;

}



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值