標(biāo)題: C語(yǔ)言枚舉的簡(jiǎn)單應(yīng)用 [打印本頁(yè)]

作者: hutians    時(shí)間: 2015-2-10 17:41
標(biāo)題: C語(yǔ)言枚舉的簡(jiǎn)單應(yīng)用
/************************************************************************************
    口袋中有紅、黃、藍(lán)、白、黑5種顏色的球若干個(gè)。每次從口袋中先
后取出3個(gè)球,求得到3種不同顏色的球的可能取法,并輸出每種排列的情
況及多少種可能。
    使用枚舉法列舉顏色。

****************************************************************************************/

#include <stdio.h>
#include <stdlib.h>

int main()
{
    enum color{red,yellow,blue,white,black};
    enum color i,j,k,pri;
    int n,loop;
    n = 0;
    for(i=red;i<=black;i++)
        for(j=red;j<=black;j++)
            if(i!=j)
            {
                for(k=red;k<=black;k++)
                    if((k!=i)&&(k!=j))
                    {
                        n++;
                        printf("%-4d",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:      printf("%-10s","red");       break;
                                case yellow:  printf("%-10s","yellow");   break;
                                case blue:     printf("%-10s","blue");     break;
                                case white:    printf("%-10s","white");    break;
                                case black:    printf("%-10s","black");   break;
                                default :         break;
                            }
                        }
                        printf("\n");
                    }
            }
    printf("\ntotal:%5d\n",n);
    return 0;
}















歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1