下面程序的输出是【 】。 main() {enum em{em1=3,em2=1,em3}; char*aa[]={"AA"m,"BB","CC:,"DD"}; printf("%s%s%s\n,aa[em1],aa[em2],a

admin2009-01-15  20

问题 下面程序的输出是【  】。
   main()
   {enum em{em1=3,em2=1,em3};
   char*aa[]={"AA"m,"BB","CC:,"DD"};
   printf("%s%s%s\n,aa[em1],aa[em2],aa[em3]);
   }

选项

答案DDBBCC

解析 C语言对枚举的定义规定:在枚举中声明的各个枚举元素,如果没有明确指出某个枚举元素的值,它的上一个元素存在并有明确值的情况下,这个枚举元素的值为其上一个元素的值+1。在本题中,没有明确说明枚举元素em3的值,则em3=em2+1=1+1=2,进而可知,在printf()打印函数中,要打印的数组元素是aa[3]、aa[1]、aa[2],因此最后的打印结果应当为“DDBBCC”。
转载请注明原文地址:https://kaotiyun.com/show/ZsXp777K
0

最新回复(0)