C |回路与控制结构|问题13

以下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
喜欢就支持一下吧
点赞12 分享