c语言中枚举类型的程序问题

c语言中枚举类型的程序问题,第1张

您好:

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语言,枚举问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/10082950.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存