以下C程序段的输出是什么?(盖特CS 2012)
null
char inchar = 'A' ; switch (inchar) { case 'A' : printf ( "choice A " ) ; case 'B' : printf ( "choice B " ) ; case 'C' : case 'D' : case 'E' : default : printf ( "No Choice" ) ; } |
(A) 别无选择 (B) 选择A (C) 选择A 选择B别无选择 (D) 程序没有输出,因为它是错误的 答复: (C) 说明: 在“A”的情况下没有break语句。如果执行了一个case,但它不包含break,那么所有后续的case都将执行,直到找到break语句为止。这就是为什么开关内部的所有内容都会打印出来。 尝试以下程序作为练习。
int main() { char inchar = 'A'; switch (inchar) { case 'A' : printf ("choice A ") ; case 'B' : { printf ("choice B") ; break; } case 'C' : case 'D' : case 'E' : default: printf ("No Choice") ; } }
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END