首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

关于枚举请求帮忙解决办法

2012-03-20 
关于枚举请求帮忙#includestdio.henumbody{a,b,c,d}month[31],jvoidmain(){intijafor(i1i 30i+

关于枚举请求帮忙
#include   <stdio.h>

enum   body   {
a,b,c,d
}month[31],   j;
void   main()   {
int   i;
j=a;
for(i=1;i <=30;i++){
month[i]=j;
j   =   (body)(j   +   1);    

  /*在这里j表示什么意思,j+1又表示什么呢?自加后指向哪里呢?和a,b,c,d的关系是什么?*/

if   (j> d)   j=a;
}
for(i=1;i <=30;i++){
switch(month[i])
{
case   a:printf( "   %2d   %c\t ",i, 'a ');   break;
case   b:printf( "   %2d   %c\t ",i, 'b ');   break;
case   c:printf( "   %2d   %c\t ",i, 'c ');   break;
case   d:printf( "   %2d   %c\t ",i, 'd ');   break;
default:break;
}
}
}


[解决办法]
就是枚举字典里面比当前数值大一的那个数值
enum body {
a,b,c,d
}
默认a=0,b=1,c=2,d=3;
如果j=b;
那么(body)(j+1)就是c
[解决办法]
enum body {
a,b,c,d
}month[31], j;
...
j = (body)(j + 1); //自增
if (j> d) j=a;//循环
-----------------------
j就是枚举变量可以取0123四个值。
[解决办法]
楼上都说了
[解决办法]
:)
[解决办法]
哈哈哈

热点排行