您好:
if (i != j && j !=k && k!=i) -- 三种不同颜色的条件
#include <stdioh>
#include <
>
void main()
{
int i,j,k,n=0;
char c[5][7]={"red","yellow","blue","white","black"};
for (i=0;i<5;i++)
for (j=i+1;j<5;j++)
for (k=j+1;k<5;k++)
{ if (i != j && j !=k && k!=i) printf("%s %s %s\n",c[i],c[j],c[k]); n++;};
printf("n=%d",n);
}
得:
red yellow blue
red yellow white
red yellow black
red blue white
red blue black
red white black
yellow blue white
yellow blue black
yellow white black
blue white black
n=10
~如果不懂,请继续追问!
~如果你认可我的回答,请及时点击采纳为最佳回答按钮~
~如还有新的问题,在您采纳后可以继续求助我!
~您的采纳是我前进的动力~
~O(∩_∩)O,记得好评和采纳,互相帮助祝学习进步!
定义的例子
typedef enum {clRED,clBLUE,clGREEN} TColor;
TColor thisColor;//定义变量
使用的例子
if (thisColor==clRED){
printf("红\n");
}
或
switch(thisColor){
case clRED:printf("红\n");break;
case clGREEN:printf("绿\n");break;
case clBLUE:printf("蓝\n");break;
else:printf("未定义 \n");break;
}
枚举里面的元素如果不重新定义的话是从0开始往下排,就像数组的下标一样,如果你重新定义了,那下一个元素就是前面那个元素值再+1,例如本来enum
colors
{red,green,blue}col默认是red=1,green=1,blue=2;但你给1=red之后就是从1开始往后加了;printf(1=red,2=green,3=blue
seclect:
)嘛;只是一句话的输出,scanf(%d,&cl);就是输入一个数从1~3任意一个;col=(enum
colors)
cl;就是调用了你输入1就显示red,2就显示green,3就显示blue,其实就是选择嘛不过你这赋值好象不对,应该是red=1不是1=red,不论怎样,能运行就可以了呵呵~~~
enum类型定义,没有设定第一个标签的值,则默认为0,此后每个标签的值都是上一个的值+1。
自然,my=0
your显示赋值了,your=4
his没显示赋值,his=you+1=4+1=5
her显示赋值了,her=his+10=5+10=15
0 4 5 15
以上就是关于c语言中枚举类型的程序问题全部的内容,包括:c语言中枚举类型的程序问题、c语言返回枚举类型及判断、c语言,枚举问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)