c语言开关语句示例

# includestdio.h

void main()

{

浮动价格;

int a;

Printf("请输入购买金额\ n ");

scanf("%f ",价格);

如果(价格200)

Printf("金额不足200不打折,实际应付:%f\n ",价格);

其他

{

a =价格/100;

开关(a)

{

案例二:

案例三:

案例四:printf("折现率10%;实际应付:%f元\n”,0.9 *价格);打破;

案例5:

案例6:

案例7:

案例8:

案例九:printf("折现率20%;实际应付:%f元\n”,0.8 *价格);打破;

默认:printf("折现率30%;实际应付:%f元\n”,0.7 *价格);打破;

}

}

}

c语言开关语句 第二个问题是个好问题!

第一个问题是这样的。当switch中的值等于case后的值时,执行case中的语句。开关是从上到下判断的,C语言的语句执行过程是从下到上的(不要混淆),所以开关执行是一样的。不是先执行case0,而是先判断switch里的值是不是20,从上到下依次判断。如果switch中的值为0,执行case0,考虑一下!

第二个问题,说实话我之前没有编译过案例中间的默认(不知道编译器是否报错)。呵呵,虽然这个没什么用,但是对理解编译还是有帮助的。反正结果应该是这样的。默认执行后,以下情况都不会执行。

"不管放在哪里,默认都是最后一次执行吗?"不会,不管放在哪里,从上到下执行的时候都会执行,即使后面有case语句等。,这些都被忽略了!

呵呵,那就有点混乱了。我看到你在线。请再问我一次!

C语言switch语句是什么? break in for循环实现switch语句、while循环等循环流控制的作用是在break之后停止执行语句,跳出这个循环,跳出循环控制体。

C语言虽然没有限制雅思可以处理的分支数量,但是分支太多的时候,用雅思处理会很不方便,雅思配对也容易出错。例如,输入一个整数并输出与该整数对应的一周中某一天的英文表示:

运行结果:

输入整数:3

星期三

c语言还提供了另一种多分支选择语句——switch语句,其基本语法格式如下:

开关(表达式)

Case常量表达式1:语句1;

Case常量表达式2:语句2;

......

Case常量表达式n:语句n;

默认值:语句n1;

}

它的执行过程是:首先计算“表达式”的值,然后从第一种情况开始与“常量表达式X”进行比较。如果不等于当前常量表达式的值,那么冒号后的语句X将不会被执行。一旦发现等于某个常量表达式的值,就会执行后面所有的语句。如果直到最后一个“常量表达式N”都没有找到等价的值,那么default之后的语句将被执行。

需要注意的是,当发现一个相等的case分支时,这个分支以及所有后续分支的语句都将被执行。例如:

运行结果:

输入整数:4

星期四

星期五

星期六

星期日

错误

输入4,找到与第四个分支匹配的,所以执行第四个分支及其之后的所有分支。这显然不是我们想要的。我们只想执行第四个分支,跳过后面的所有分支。

为了避免这种情况,C语言还提供了一个关键字break,专门用来跳出switch语句。

switch的分支语句有n 1种,我们通常想要的是选择其中一种执行,然后结束整个switch语句,继续执行switch后面的语句。这时可以通过在每个分支后添加一个break语句来实现。如下所示:

开关(表达式)

Case常量表达式1:语句1;打破;

Case常量表达式2:语句2;打破;

......

Case常量表达式n:语句n;打破;

默认值:语句n1;打破;

}

添加这个break语句后,一旦“常量表达式X”和“表达式”的值相等,那么就会执行“语句X”。执行结束后,因为break,你会直接跳出switch语句,继续执行switch语句后面的程序,这样可以避免不必要的语句。

使用switch语句修改上面的代码:

运行结果:

输入整数:4

星期四

值得一提的是,由于default是最后一个分支,匹配后不会执行其他分支,所以不需要break声明。

c语言关于switch的switch语句 楼主应该问什么问题?!!!

程序中没有错误:

可能是楼主对产量产生怀疑吧!!

例如:I输入:abcedf

输出:v0=8,v1=2,v2=7。

如果v1=2,就不解释了,而是v0=8,因为执行完case就没有隔断了;所以应该执行default:v 0 = 1;v2 = 1;当你读完字符F,这时,V 0 = 7,V 2 = 6,但由于你按了Enter,这个键就存在缓存里了。

do { } while先执行循环,再进行判断,返回的判断后面跟着回车键,所以v0和V 0,v2都加1。

#包含stdio.h

主()

{ char c;

int v0=1,v1=0,v2 = 0;

{

开关(c=getchar())

{事例“a”:事例“a”:

格e:格e:

格“I”:格“I”:

大小写“o”:大小写“o”:

大小写“u”:大小写“u”:v1 = 1;

默认值:

{

v 0 = 1;v2 = 1;

}

}

} while(c!= ' \ n ');

printf("v0=%d,v1=%d,v2=%d\n ",v0,v1,v2);

}

相关文章

发表新评论