C语言 这个程序的结果为什么是5

来源:百度知道 编辑:UC知道 时间:2024/05/31 08:21:49
#include<stdio.h>
#include<string.h>
#include <stdlib.h>

void main()
{
enum weekday {aa,bb=2,cc,dd,ee}week=ee;
printf("%d\n",week);

}
我想知道这几个量都被赋了什么值 为什么?

aa=0;bb=2,cc=3,dd=4,ee=5
第一个数值,如果你没有赋值,系统会自动赋值0,第二个自动赋值1,然后以后的每一个都加1,但是你的bb赋值2,系统会自动把下面的赋值加1
应该是这样哈

只喜欢茄子 正解
enum weekday week;相当于int a;
这里enum weekday相当于int,week相当于a.

先说结果:aa=1,cc=3¨¨¨编译器会根据bb的值先前向后赋值,你也可以修改一下:让程序把五个变量都输出结果.书上应该讲到这点的,多看教材吧!

aa=0,bb=2,cc=3,dd=4,ee=5