GESP C++二级样题卷
-
人们在使用计算机时所提到的 Windows 通常指的是( )。
A. 操作系统
B. 多人游戏
C. 上市公司
D. 家居用具
答案:A -
万维网 WWW 中存储了海量的数据资源,这里用于传输控制的协议是( )。
A. URL
B. SMTP
C. HTTP
D. HTML
答案:C -
下列关于 C++语言的叙述,不正确的是()。
A. 变量都有类型
B. 常量都有类型
C. 常量 1.0 的类型为 double
D. 常量'1'的类型为 int
答案:D -
不可以作为 C++标识符的是()。
A. 0a0b
B. _a_b
C. _0ab
D. a0b0
答案:A -
以下语句定义的变量占用 1 字节内存的是()。
A. int a = 1;
B. int b = 'b';
C. bool c = true;
D. double d = 1.0;
答案:C -
如果 a 是已定义的 int 类型变量,以下 C++语言的语句不能通过编译的是( )。
A. a = 3.0;
B. int a = 3;
C. a = 3;
D. a = '3';
答案:B -
下列不是 C++语言的运算符的是()。
A. >=
B. <=
C. ==
D. =>
答案:D -
如果用三个 int 类型的变量 a、b 和 h 分别表达梯形的上底、下底和高的长度,
则下列哪个表达式可以用来计算梯形的面积?
A. h * (a + b) / 2
B. 0.5 * h * (a + b)
C. 0.5 * (h * a + b)
D. 0.5 * h * a + b
答案:B -
已知'A'的 ASCII 码为 65,'1'的 ASCII 码为 49,'r'的 ASCII 码为 114,则表达式'A' + 1 的计算结果为()。
A. 66
B. 'B'
C. 114
D. 'r'
答案:A -
如果 a 为 char 类型的变量,且 a 的值为'1',则执行 a = a + 3;之后,a 的值会是()。
A. 4
B. 13
C. '4'
D. '13'
答案:C -
如果 a 和 b 均为 int 类型的变量,下列表达式能够正确判断“a 是 b 的倍数”的是()
A. a == b * ?
B. a % b = 0
C. a / b * b == a
D. b % a == 0
答案:C -
如果 a 为 int 类型的变量,且 a 的值为 1,则下列表达式的值为'3'的是()。
A. a + 2
B. a + '2'
C. 'a' + 2
D. (char)(a + '2')
答案:D -
在下列代码的横线处填写(),可以使得输出是“20 10”。
#include<iostream>
using namespace std;
int main(){
int a=10, b=20;
_______// 在此处填入代码
cout<<a<<" "<<b<<endl;
return 0;
}
A. (a, b) = (b, a);
B. a = max(a, b); b = min(a, b);
C. a = a + b; b = a - b; a = a - b;
D. tmp = a; a = b; b = tmp;
答案:C
- 在下列代码的横线处填写(),可以使得输出是“1357”。
#include<iostream>
using namespace std;
int main(){
for(int i=1; i<=8; _______)// 在此处填入代码
cout<<1;
return 0;
}
A. i++
B. i + 2
C. i *= 2
D. i += 2
答案:D
- 执行以下 C++语言程序后,输出结果是()。
#include <iostream>
using namespace std;
int main() {
int sum = 0;
for (int i = 1; i <= 20; i++)
if (20 % i == 0)
sum += i;
cout << sum << endl;
return 0;
}
A. 20
B. 42
C. 22
D. 210
答案:B
二、判断题(每题 2 分,共 20 分)
- 程序员用 C、C++、Python、Scratch 等编写的程序能在 CPU 直接执行( F )。
- 计算机系统中存储的基本单位用 B 来表示,它代表的是字节 ( T )。
- C++语言中,注释虽然很有用,但不能写太多,否则会拖慢程序运行速度。( F )
- C++语言中,循环不能写太多层,因为层数是有限制的。( F )
- 5.0 是一个 int 类型常量。( F )
- 汉字没有对应的 ASCII 码。( T )
- 如果没有 break 语句,有些功能就无法实现了。( F )
- 使用 C++语言编写循环时,有可能导致无限循环。( T )
- 如果 a 为 int 类型的变量,且表达式(a % 2 == 0)的计算结果为假,说明 a 的值是奇数。( T )
- 表达式 sqrt(9)的计算结果为 3,且结果类型为 int 类型。( F )
三、编程题 (每题 25 分,共 50 分)
- 画正方形
【问题描述】
输入一个正整数?,要求输出一个?行?列的正方形图案(参考样例输入输出)。
图案由大写字母组成。其中,第 1 行以大写字母'A'开头,第 2 行以大写字母'B'开
头,以此类推;在每行中,第 2 列为第 1 列的下一个字母,第 3 列为第 2 列的下一
个字母,以此类推;特别的,规定大写字母'Z'的下一个字母为大写字母'A'。
【输入描述】输入一行,包含一个正整数?。约定 2 ≤ ? ≤ 40
【输出描述】输出符合要求的正方形图案。
【样例输入 1】3
【样例输出 1】
ABC
BCD
CDE
【样例输入 2】5
【样例输出 2】
ABCDE
BCDEF
CDEFG
DEFGH
EFGHI
【参考程序】
#include <iostream>
using namespace std;
int main() {
int n; cin >> n;
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++)
cout << (char)('A' + (i + j) % 26);
cout << endl;
}
return 0;
}
- 勾股数
【问题描述】
勾股数是很有趣的数学概念。如果三个正整数 a,b,c,满足 \(a^2+b^2=c^2\),而且1 ≤a ≤b ≤c,
我们就将a,b,c组成的三元组(a,b,c)称为勾股数。你能通过编程,数数有多少组勾股数,能够满足 c≤n吗?
【输入描述】输入一行,包含一个正整数?。约定 1 ≤n ≤ 1000。
【输出描述】输出一行,包含一个整数C,表示有C组满足条件的勾股数。
【样例输入 1】5
【样例输出 1】1
【样例解释 1】满足C ≤ 5 的勾股数只有一组,即(3,4,5)。
【样例输入 2】13
【样例输出 2】3
【样例解释 2】满足C ≤ 13 的勾股数有 3 组,即(3,4,5)、(6,8,10)和(5,12,13)。
【参考代码】
#include <cmath>
#include <iostream>
using namespace std;
int main() {
int n, cnt = 0; cin >> n;
for (int a = 1; a <= n; a++)
for (int b = a; b <= n; b++) {
int c2 = a * a + b * b;
int c = (int)(sqrt(c2) + 0.5);
if (c > n) break;
if (c * c == c2) cnt++;
}
cout << cnt << endl;
return 0;
}
标签:输出,int,样例,C++,答案,类型,GESP
From: https://www.cnblogs.com/hellohebin/p/17487588.html