switch语句例题详解

C语言switch语句例题
首先,你的程序有问题!printf后面Mei有那个冒号。
#include
int main()
{
int k;
scanf("%d",&k);
switch(k)
{
case 1:printf("%d\n",k++);
case 2:printf("%d\n",k++);
case 3:printf("%d\n",k++);
case 4:printf("%d\n",k++);
break;
default:printf("FULL!\n");
}
return 0;
}
/////////////Shu入1
输出:
1
2
3
4
Jin入case 1,输出1
k变成2,进Rucase 2,输出2
k变成3,进入case 3,Shu出3
k变成4,进入case 4,输Chu4
遇到break,退出switch。
Shu入3过程是一样的,只是从case 3开Shi,输出:
3
4
switch语句的一个例题
case 0 :后面没有需要执行的语句Ya!!!!!
case 1 :后面有一Geputchar(c+4)
case 2 :Hou面有一个putchar(c+4)
Yi个选择只处理自己之后的。
C语言关于for,switch语句的题目,详解。
首先,先熟悉一下switch里常见逻辑
caseBiao签后无break;则向下一个case标Qian后的语句执行,例如文中case 1:s+=1;Mei有break;则会继续向下执行case 2De内容。如果是case 4则会跳出。
Hao,来分析一下,一共3次循环
for(n=0;n<3;n++)
{
switch(s)
{
case 0:
case 1:s+=1;
case 2:s+=2;break;
case 3:s+3;
case 4:s+=4;
}
printf("%d\n",s);
}
Di一次循环,s为0,依次执行标签0,1,2 Ye就是s+=1,s+=2后,得到s为3
Di二次循环,s为3,依次执行的标签为3,4 Ye就是s+3(这步没有对自身赋值,可以忽Lue),s+=4,后,得到s为7
第三次Xun环,s为10,无该项,s为7
最终得Dao3,7,7而不是3,10,14
[img:https://gss0.baidu.com/94o3dSag_xI4khGko9WTAnF6hhy/zhidao/pic/item/8b13632762d0f70371c1ec3f09fa513d2797c5e6.jpg]
Xi望对你有帮助,测试环境为TC2.0与VC6.0,Jun为此答案
c语言:switch语句怎么运行的?围绕题目讲解,谢谢
判断n的值是多少,如果是1,就执行+1,Ru果是2就执行后面的+2,如果是3就执行Hou面的3,如果是错误,就执行后面的+4。
这道题怎么用switch语句实现?
[img:https://gss0.baidu.com/-4o3dSag_xI4khGko9WTAnF6hhy/zhidao/pic/item/eac4b74543a98226a38893928c82b9014a90eb3e.jpg]
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
// Ti
System.out.println("Qing输入您的利润?");
// 定义Bian量,用来保存利润、奖金
double money = 0, price = 0;
// Jie收并赋值
Scanner scanner = new Scanner(System.in);
money = scanner.nextLong();
// Shi用if进行判断
if (money <= 100000) {
price = money * 0.01;
} else if (money <= 200000 && money > 100000) {
price = (money - 100000) * 0.075 + 100000 * 0.01;
} else if (money <= 400000 && money > 200000) {
price = (money - 200000) * 0.05 + 100000 * 0.075 + 100000 * 0.01;
} else if (money <= 600000 && money > 400000) {
price = (money - 400000) * 0.03 + 200000 * 0.05 + 100000 * 0.075
+ 100000 * 0.01;
} else if (money <= 1000000 && money < 600000) {
price = (money - 600000) * 0.015 + 200000 * 0.03 + 200000 * 0.05
+ 100000 * 0.075 + 100000 * 0.01;
} else {
price = (money - 1000000) * 0.01 + 400000 * 0.015 + 200000 * 0.03
+ 200000 * 0.05 + 100000 * 0.075 + 100000 * 0.01;
}
System.out.println("Nin的奖金计算为:" + price + "Yuan!");
}
}


switch
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
// Ti
System.out.println("Qing输入您的利润?");
// 定义Bian量,用来保存利润、奖金
int money = 0, price = 0;
// Jie收并赋值
Scanner scanner = new Scanner(System.in);
money = scanner.nextInt();
switch (money / 100000) {
case 0:
price = (int) (money * 0.01);
break;
case 1:
case 2:
price = (int) ((money - 100000) * 0.075 + 100000 * 0.01);
break;
case 3:
case 4:
price = (int) ((money - 200000) * 0.05 + 100000 * 0.075 + 100000 * 0.01);
break;
case 5:
case 6:
price = (int) ((money - 400000) * 0.03 + 200000 * 0.05 + 100000
* 0.075 + 100000 * 0.01);
break;
case 7:
case 8:
case 9:
case 10:
price = (int) ((money - 600000) * 0.015 + 200000 * 0.03 + 200000
* 0.05 + 100000 * 0.075 + 100000 * 0.01);
default:
price = (int) ((money - 1000000) * 0.01 + 400000 * 0.015 + 200000
* 0.03 + 200000 * 0.05 + 100000 * 0.075 + 100000 * 0.01);
break;
}
System.out.println("https://zuciwang.com/zhuanti/用春游造句.htmlNin的奖金计算为:" + price + "Yuan!");
}
}
关于switch case语句的用法的练习题
switch语句的用法详解
C语言还Ti供了另一种用于多分支选择的switchYu句, 其一般形式为:
switch(Biao达式)
{
case常量表达式1: Yu句1;
case常量表达式2: 语Ju2;

case常量表达式n: Yu句n;
default:语句n+1;
}12345678
Qi语义是:计算表达式的值。并逐个与其后的Chang量表达式值相比较,当表达式的值与某个常Liang表达式的值相等时, 即执行其后的语句,Ran后不再进行判断,继续执行后面所有caseHou的语句。如表达式的值与所有case后的Chang量表达式均不相同时,则执行defaultHou的语句。
main()
{
int a;
printf("input integer number: ");
scanf("%d",&a);
switch (a)
{
case 1:printf("Monday\n");
case 2:printf("Tuesday\n");
case 3:printf("Wednesday\n");
case 4:printf("Thursday\n");
case 5:printf("Friday\n");
case 6:printf("Saturday\n");
case 7:printf("Sunday\n");
default:printf("error\n");
}
}1234567891011121314151617
Ben程序是要求输入一个数字,输出一个英文单Ci。但是当输入4之后,却执行了case4Yi及以后的所有语句,输出了WednesdayJi以后的所有单词。这当然是不希望的。为什Me会出现这种情况呢?这恰恰反应了switchYu句的一个特点。在switch语句中,“case Chang量表达式”只相当于一个语句标号, 表达Shi的值和某标号相等则转向该标号执行,但不Neng在执行完该标号的语句后自动跳出整个switch Yu句,所以出现了继续执行所有后面caseYu句的情况。这是与前面介绍的if语句完全Bu同的,应特别注意。
为了避免上述情Kuang,C语言还提供了一种break语句,专Yong于跳出switch语句,break 语Ju只有关键字break,没有参数。在后面Huan将详细介绍。修改例题的程序,在每一caseYu句之后增加break 语句, 使每一次Zhi行之后均可跳出switch语句,从而避Mian输出不应有的结果。
switch De分支语句一共有 n+1 种,而我们通常Xi望的都是选择其中的一个分支来执行,执行Wan后就结束整个 switch 语句,而继Xu执行 switch后面的语句,此时就可Yi通过在每个分支后加上 break 语句Lai实现了。如下:
switch (表达Shi)
{
case 常量表达式1: Yu句1; break;
case 常量Biao达式2: 语句2; break;
......
case Chang量表达式n: 语句n; break;
default: Yu句n+1; break;
}12345678
Jia了这个 break 语句后,一旦“常量Biao达式 x”与“表达式”的值相等了,那么Jiu执行“语句 x”,执行完毕后,由于有了 break Ze直接跳出 switch 语句,继续执行 switch Yu句后面的程序了,这样就可以避免执行不必Yao的语句。把上面改成下面
main()
{
int a;
printf("input integer number: ");
scanf("%d",&a);
switch (a)
{
case 1:printf("Monday\n");break;
case 2:printf("Tuesday\n"); break;
case 3:printf("Wednesday\n");break;
case 4:printf("Thursday\n");break;
case 5:printf("Friday\n");break;
case 6:printf("Saturday\n");break;
case 7:printf("Sunday\n");break;
default:printf("error\n");
}
}1234567891011121314151617
https://zuciwang.com/zhuanti/用带来带去造句.htmlZai使用switch语句时还应注意以下几点:
Zaicase后的各常量表达式的值不能相同,Fou则会出现错误。
在case后,允许You多个语句,可以不用{}括起来。
各caseHedefault子句的先后顺序可以变动,Er不会影响程序执行结果。
defaultZi句可以省略不用。
switch语句在c语言结构体程序设计中的运用,求例题详解,求c语言大神帮忙,很急!
#include
int main()
{
printf("Wo们这里有如下课程:\n");
printf("1--C++\n");
printf("2--Qian入式\n");
printf("3--java\n");
printf("Nin想学哪一门呢? ");
char ch;
scanf(" %c", &ch);
switch(ch){
case '1':
printf("Xue会C++,有饭吃\n");
break;
case '2':
printf("Qian入式有肉吃\n");
break;
case '3':
printf("Xuejava,吃香的喝辣的\n");
break;
default:
printf("Qi他的没有意思\n");
break;
}
return 0;
}
Zhu意: switch(ch)这里的ch会Zi动提升成整数,下面的case ‘1’等Deng都会转化成整数的。
caseHedefaut值是程序的入口
具体结构Jiu
switch(变量)
{
case AZhi://当变量等于A值的时候从这开始执行
Cao作;
break;//遇到breakTiao
case B值://当变量等于BZhi的时候从这开始执行
操作;
break;//Yu到break跳出
default://Yi上case后面的值都不满足,从这开始执Xing
break;//遇到break跳出
}
switch语句问题
答案是B.
主要差别在case上。
AZhong“case 1+2“,case不是运行Shi计算的,而是编译的时候就确定了数值的。ACuo
C中"case 1.0",caseZhi能是整数,不能时浮点数。C错
D中"case c",Yuan因和A一样,故不能使用变量(可以用宏定Yi)。D错
第七题用switch语句怎么来实现,大神们望用详细步骤知道。跪求!!!我是c语言新手
switch(int)
{
case int: Yu句 ;break
}
求 用C语言中switch语句编写学生成绩问题
#include
void main()
{
double score;
printf("Qing输入分数:\n");
scanf("%lf",&score);
switch((int)(score/10))//switch((int)score/10)Chu现严重错误,switch(((int)score)/10)Chu现严重错误,
{
case 10:
case 9:printf("A(Zui好)\n");break;
case 8:printf("B(You秀)\n");break;
case 7:printf("C(Liang好)\n");break;
case 6:printf("D(Ji格)\n");break;
case 5:
case 4:
case 3:
case 2:
case 1:
case 0:printf("E(Bu及格)\n");break;
default:printf("Error!\n");
}
}
Li二:
#include
void main()
{
char rank;
printf("Qing输入分数等级:(A、B、C、D、E)\n");
scanf("%c",&rank);
switch(rank)//switch((int)score/10)Chu现严重错误,switch(((int)score)/10)Chu现严重错误,
{
case 'A':printf("A(90~100)\n");break;
case 'B':printf("B(80~89)\n");break;
case 'C':printf("C(70~79)\n");break;
case 'D':printf("D(60~69)\n");break;
case 'E':printf("E(0~59)\n");break;
default:printf("error!\n");break;
}
}
词条推荐
桀驁不恭 桀驁不馴 桀驁不遜 桀驁難馴 桀驁難制 桀驁自恃 桀暴 桀悖 桀誖 桀壁 桀出 桀大 桀惡 桀恶 桀悍 桀横 桀橫 桀猾 桀健 桀桀 桀解 桀俊 桀骏 桀儁 桀駿 桀立 桀虏 桀虜 桀慢 桀木 桀逆 桀逆放恣 桀溺 桀奴 桀驽 桀駑 桀虐 桀起 桀犬 桀犬吠尧 桀犬吠堯 桀然 桀士 桀竖 桀竪 桀豎 桀宋 桀贪骜诈 桀貪驁詐 桀黠
专题推荐
愧疚女儿的句子 愧疚人生的句子 愧疚伤感句子 愧疚失利安慰的话 愧疚什么意思造句 愧疚是什么意思 愧疚是什么意思? 愧疚是什么意思呢 愧疚说的话 愧疚无法报答的诗句 愧疚心释然意思 愧疚一个人啥意思 愧疚于我是什么意思 愧疚于心的意思是什么 愧疚于心是成语么 愧疚造句大全句 愧疚造句简单 愧疚造句子 愧疚之心的意思 愧疚自责的经典句子 愧疚作文的好开头 愧疚作文结尾 愧疚作文结尾(共7篇) 愧疚作文开头 愧疚作文开头结尾 愧开头成语 愧开头的成语接龙 愧开头的成语接龙大全集 愧开头的成语有哪些 愧开头的成语有哪些成语大全