蓝桥等考C++组别六级005
第一部分:选择题
1、C++ L6 (15分)
关于switch语句,以下说法不正确的是( )。
A. case语句后面的break不是必须的。
B. case后面的表达式可以是变量或者变量表达式。
C. default子句后面的break是可以省略的。
D. 程序中的switch结构也可以替换成if-else if-else多分支结构。
正确答案:B
2、C++ L6 (15分)
执行以下代码后的输出结果是( )。
int a = 17;
switch (a % 3)
{
case 1:
cout << 'B';
break;
case 2:
cout << 'A';
default:
cout << "*";
}
A. A
B. B
C. A*
D. B*
正确答案:C
3、C++ L6 (20分)
执行以下代码后的输出结果是( )。
int n = 11, bonus = 0;
char grade = 'C';
switch (n % 3)
{
case 1:
bonus = 100;
cout << bonus;
switch (grade)
{
case 'A': cout << "*6"; break;
case 'B': cout << "*3"; break;
case 'C': cout << "*1";
}
break;
case 2:
bonus = 60;
cout << bonus;
switch (grade)
{
case 'A': cout << "#3"; break;
case 'B': cout << "#2"; break;
default: cout << "#1";
}
break;
default:
bonus = 20;
cout << bonus;
}
A. 30*3
B. 60#1
C. 60*1
D. 20
正确答案:B
第二部分:编程题
4、C++ L6 选择题的答案(50分)
题目名称:选择题的答案
题目描述:
Lily老师发现课堂上提问选择题时,总是难以分辨到底学生回答的是B还是D,是A还是C。她就想了一个办法,让同学们在选择A的时候回答说 Apple,选择B的时候说Boy,选择C的时候说Cow,选择D的时候说Dog。这样问题就解决了。
请你设计一个程序来实现这种回答选择题的方式。
输入:
输入一个字符,表示学生回答的选项字母(包括大写和小写形式)。
输出:
按照题目描述,输出与输入的字符对应的单词(首字母大写)。
注意:输入输出格式要和样例严格保持一致,不要输出任何与答案无关的内容,如“请输入:”之类的提示信息,或者在数据前面输出多余的空格或空行。
输入样例1:
a
输出样例1:
Apple
输入样例2:
B
输出样例2:
Boy
参考程序:
#include<iostream>
using namespace std;
int main()
{
char c;
cin >> c;
switch (c)
{
case 'A':
case 'a': cout << "Apple"; break;
case 'B':
case 'b': cout << "Boy"; break;
case 'C':
case 'c': cout << "Cow"; break;
case 'D':
case 'd': cout << "Dog"; break;
}
return 0;
}
测试数据:
1.in
a
1.out
Apple
2.in
b
2.out
Boy
3.in
c
3.out
Cow
4.in
D
4.out
Dog
5.in
A
5.out
Apple
蓝桥等考C++组别六级005
第一部分:选择题
1、C++ L6 (15分)
关于switch语句,以下说法不正确的是( )。
A. case语句后面的break不是必须的。
B. case后面的表达式可以是变量或者变量表达式。
C. default子句后面的break是可以省略的。
D. 程序中的switch结构也可以替换成if-else if-else多分支结构。
正确答案:B
2、C++ L6 (15分)
执行以下代码后的输出结果是( )。
int a = 17;
switch (a % 3)
{
case 1:
cout << 'B';
break;
case 2:
cout << 'A';
default:
cout << "*";
}
A. A
B. B
C. A*
D. B*
正确答案:C
3、C++ L6 (20分)
执行以下代码后的输出结果是( )。
int n = 11, bonus = 0;
char grade = 'C';
switch (n % 3)
{
case 1:
bonus = 100;
cout << bonus;
switch (grade)
{
case 'A': cout << "*6"; break;
case 'B': cout << "*3"; break;
case 'C': cout << "*1";
}
break;
case 2:
bonus = 60;
cout << bonus;
switch (grade)
{
case 'A': cout << "#3"; break;
case 'B': cout << "#2"; break;
default: cout << "#1";
}
break;
default:
bonus = 20;
cout << bonus;
}
A. 30*3
B. 60#1
C. 60*1
D. 20
正确答案:B
第二部分:编程题
4、C++ L6 选择题的答案(50分)
题目名称:选择题的答案
题目描述:
Lily老师发现课堂上提问选择题时,总是难以分辨到底学生回答的是B还是D,是A还是C。她就想了一个办法,让同学们在选择A的时候回答说 Apple,选择B的时候说Boy,选择C的时候说Cow,选择D的时候说Dog。这样问题就解决了。
请你设计一个程序来实现这种回答选择题的方式。
输入:
输入一个字符,表示学生回答的选项字母(包括大写和小写形式)。
输出:
按照题目描述,输出与输入的字符对应的单词(首字母大写)。
注意:输入输出格式要和样例严格保持一致,不要输出任何与答案无关的内容,如“请输入:”之类的提示信息,或者在数据前面输出多余的空格或空行。
输入样例1:
a
输出样例1:
Apple
输入样例2:
B
输出样例2:
Boy
参考程序:
#include<iostream>
using namespace std;
int main()
{
char c;
cin >> c;
switch (c)
{
case 'A':
case 'a': cout << "Apple"; break;
case 'B':
case 'b': cout << "Boy"; break;
case 'C':
case 'c': cout << "Cow"; break;
case 'D':
case 'd': cout << "Dog"; break;
}
return 0;
}
测试数据:
1.in
a
1.out
Apple
2.in
b
2.out
Boy
3.in
c
3.out
Cow
4.in
D
4.out
Dog
5.in
A
5.out
Apple