怎么查店名是否被注册,网站搜索优化公司,小程序制作推广,怎么在网站添加paypal一、问题 C语⾔中有两个构成选择结构的语句#xff0c;即构成双分⽀的让if..else 语句和构成多分⽀的 switch..case 语句#xff0c;switch 语句的基本格式是什么#xff1f;
二、解答
switch (表达式)
{
case 常量表达式 1:语句1;break;case 常量表达式 n:语句n;break;de…一、问题 C语⾔中有两个构成选择结构的语句即构成双分⽀的让if..else 语句和构成多分⽀的 switch..case 语句switch 语句的基本格式是什么
二、解答
switch (表达式)
{
case 常量表达式 1:语句1;break;case 常量表达式 n:语句n;break;default:语句 n 1;
} switch 后的表达式是任意类型的表达式case 后的常量表达式只能是整型或字符型。 它的执⾏过程是 先求 switch 后的“表达式”的值。然后在后⾯的多个 case 中查找此值如果找到相等的则执⾏下⾯的对应语句直到遇到⼀个 break 为⽌。如果没有 break 的话将会执⾏到下⼀个 case下的语句。如果 switch 表达式的计算结果与所有 case 均不相等则执⾏ default 后的语句。default 也可以没有即都不相等什么也不执⾏。
脚下留神在 switch 语句中当找到与 swith 表达式相等的 case 时执⾏ case 下的语句。
case 下的所有语句都执⾏完成后如果⼀直没有 break那么程序将会执⾏到下⼀个 case
⽽不管它的值是否与 switch 表达式相等即多个 case 之间不具有天然的互斥性。要想使程
序执⾏完⼀个 case后的语句⽽不进⼊下⼀个 case,必须使⽤ break 语向使程序退出
switch 结构。这样后⾯的 case 也就不执⾏了。
看以下程序的执⾏结果
#include stdio.h
int main()
{int a, b;a 4;switch (a % 2){case 0:b 10;case 1:b 20;}
} 以上程序执⾏的结果是20。 4%2 结果是0应该显示 10 才对呀怎么会是20呢原因就在于赋值语句 b10 执⾏之后因为没有 break 语句那就再向下执⾏进⼊ case 1再执⾏ b20因此最后的结果显示为 20。要想让它能够显示 10需要在 b10 的后⾯case 1 的前⾯加上⼀⾏“break;”包括分号这样就可以得出10了。
三、总结 switch 语句不具备互斥功能给写程序添加了⼀个⿇烦即再多写⼀个 break但它也为多个 case 共⽤⼀组执⾏语句提供了条件。