第八节:switch语句

选择结构之switch语句

1、小明赴约会

小明的朋友小红约小明下周一起去看展览,但小明每周的一、三、五有课必须上课,请帮小明判断他能否接受小红的邀请。如果能,输出YES;如果不能,则输出NO。注意YES和NO都是大写字母! 输入: 一行,小红邀请小明去看展览的日期,用数字1~7表示从星期一到星期日。 输出: 一行,若小明可以接受小红的邀请,则输出YES,否则输出NO。注意YES和NO都是大写字母! 样例输入: 2 样例输出: YES

2、骑车与走路

在清华校园里,若没有自行车,上课办事会很不方便。但实际上,并非去办任何事情都是骑车快,因为骑车总要找车、开锁、停车、锁车等,这要耽误一些时间。假设找到自行车,开锁并骑上自行车的时间为27秒;停车锁车的时间为23秒;步行每秒行走1.2米,骑车每秒行走3.0米。请判断走不同的距离去办事是骑车快还是走路快。如果骑车快,那么输出“Bike”;如果走路快,那么输出“Walk”;如果一样快,那么那么输出“All”。 输入: 一行,包含一个整数,表示一次办事要行走的距离,单位为米。 输出: 一行,如果骑车快,那么输出“Bike”;如果走路快,那么输出“Walk”;如果一样快,那么输出“All”。 样例输入: 120 样例输出: Bike

3、分段函数

编写程序,计算下列分段函数y=f(x)的值。结果保留到小数点后三位。

y=x+2.50<=x<5
y=21.5(x3)(x3)5<=x<10
y=x/21.510<=x<20

输入: 一个浮点数n(0<=n<20)。 输出: n对应的分段函数值:f(n)。结果保留到小数点后三位。 样例输入: 1.0 样例输出: 1.500

4、计算邮资

根据邮件的质量和用户是否选择加急计算邮票。计算规则:质量在1000克以内(包括1000克),基本费8元。超过1000克的部分,每500克加收超重费4元,不足500克部分按500克计算;如果用户选择加急,多收5元。 输入: 一行,包含整数和一个字符,以一个空格分开,分别表示质量(单位为克)和是否加急。如果字符是y,说明选择加急;如果字符是n,说明不加急。 输出: 一行,包含一个整数,表示邮费。 样例输入: 1200 y 样例输出: 17

5、最大数输出

输入三个整数,数与数之间以一个空格分开。输出一个整数,即最大的整数。 输入: 一行,包含三个整数、数与数之间以一个空格分开。 输出: 一行,包含一个整数,即是最大的整数。 样例输入: 10 20 56 样例输出: 56

6、三角形判断

给定三个正整数,分别表示三条线段的长度,判断这三条线段能否构成一个三角形。如果能构成三角形,则输出“yes”,否则输出“no”。 输入: 一行,包含三个正整数,分别表示三条线段的长度,数与数之间以一个空格分开。 输出: 如果能构成三角形,则输出“yes”,否则输出“no”。 样例输入: 3 4 5 样例输出: yes

7、判断闰年

判断某年是否是闰年。如果公元a年是闰年输出Y,否则输出N。 输入: 一行,包含一个整数a(0<a<3000)。 输出: 一行,如果公元a年是闰年输出Y,否则输出N。 样例输入: 2006 样例输出: N

8、点和正方形的关系

有一个正方形,四个角的坐标(x,y)分别是(1,-1),(1,1),(-1,-1),(-1,1),x是横坐标,y是纵坐标。写一个程序,判断一个给定的点是否在这个正方形内(包括正方形边界)。如果点在正方形内,则输出yes,否则输出no。 输入: 一行,包含两个整数x,y,以一个空格分开,表示坐标(x,y)。 输出: 一行,如果点在正方形内,则输出yes,否则输出no。 样例输入: 1 1 样例输出: yes

9、简单计算器

一个最简单的计算器,支持+、-、、/四种运算。仅需考虑输入输出为整数的情况,数据和运算结果不会超过int表示的范围。然而: (1)如果出现除数为0的情况,则输出:Divided by zero!; (2)如果出现无效的操作符(即不为+、-、、/之一),则输出:Invalid operator!。 输入: 一行,共有3个参数,其中第1、2个参数为整数,第3个参数为操作符(+、-、、/)。 输出: 一行,一个整数,是运算结果。然而: (1)如果出现除数为0的情况,则输出:Divided by zero! (2)如果出现无效的操作符(即不为+、-、、/之一),则输出:Invalid operator!。 样例输入: 1 2 + 样例输出: 3

10、求一元二次方程的根

利用公式

x1=(b+sqrt(bb4ac))/(2a)
x2=(bsqrt(bb4ac))/(2a)

求一元二次方程ax^2+bx+c=0的根,其中a不等于0。结果要求精确到小数点后5位。 输入: 一行,包含三个浮点数a,b,c(它们之间以一个空格分开),分别表示方程ax^2+bx+c=0的系数。 输出: 一行,是方程的根。 若两个实根相等,则输出形式为:x1 = x2 =... 若两个实根不等,则输出形式为:x1 = ...;x2=... ,其中若是两个虚根,则输出:x1=实部+虚部i;x2 = 实部-虚部i,其中x1,x2满足以下两个条件中的一个: (1)x1的实部大于x2的实部; (2)x1的实部等于x2的实部且x1的虚部大于等于x2的虚部。 所有实数部分要求精确到小数点后5位,数字、符号之间没有空格。 样例输入: 1.0 2.0 8.0 样例输出: x1 = -1.00000+2.64575i;x2 = -1.00000-2.64575i