C语言default 必须写在所有 case 之后吗? | 您所在的位置:网站首页 › default后面的语句还执行吗 › C语言default 必须写在所有 case 之后吗? |
一、问题
switch...case 语句中⽤ default 表示 switch 表达式与前⾯所有 case 均不相等时要执⾏的语句。那么 default 所在位置,是否必须在所有 case 之后呢?如果可以写在中间,怎样理解 default 的作⽤呢? 二、解答不是必须写在所有 case 之后。defaut 可以出现在任意位置,不在最后时,也表示所有 case 均不相等时执⾏的语句,包括 default 后⾯出现的 case。例如: #include int main() { char a; int flag; printf("Input acharacter:\n"); scanf("%c", &a); switch (a) { case 'a': case 'e': case 'i': case 'o': case 'u': case 'A': case 'E': case 'I': case 'O': flag = 1; break; default: flag = 0; break; case 'U': flag = 1; } printf("%d\n", flag); return 0; }运⾏结果如图所示: Input acharacter: U 1以上程序执⾏时输⼊U,输出结果是1。不会因为 default 在U前,就把 “aeiouAE1O” 之外的都归⼊到 default 中,即与它出现的位置⽆关,default 表⽰所有 case 都不相等时执⾏的操作。 三、总结尽管 defaut 与位置⽆关,但写程序时,最好写在最后,以增强程序的可读性。 |
今日新闻 |
推荐新闻 |
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 |