资源描述
高职第一学年(计算机应用技术)程序设计基础2026年阶段测试题
(考试时间:90分钟 满分100分)
班级______ 姓名______
一、选择题(总共10题,每题3分,每题只有一个正确答案,请将正确答案填在括号内)
1. 以下关于变量命名的说法,正确的是( )
A. 变量名可以包含数字、字母和下划线,且不能以数字开头
B. 变量名可以使用关键字
C. 变量名不区分大小写
D. 变量名可以包含特殊字符
2. 若有定义“int a = 5, b = 3;”,则执行表达式“a %= b + 2;”后,a的值为( )
A. 0
B. 1
C. 2
D. 3
3. 以下哪种数据类型不能直接进行强制类型转换( )
A. int到float
B. float到int
C. char到int
D. bool到int
4. 对于“for(int i = 0; i < 5; i++) { }”循环,循环体执行的次数是( )
A. 4
B. 5
C. 6
D. 不确定
5. 以下语句中,能正确输出字符‘A’的是( )
A. printf("%c", 65);
B. printf("%d", 'A');
C. printf("%s", 'A');
D. printf("%f", 'A');
6. 若有“int arr[3][4];”,则数组arr中元素的个数是( )
A. 3
B. 4
C. 7
D. 12
7. 以下关于函数定义的说法,错误的是( )
A. 函数定义必须包含函数头和函数体
B. 函数名不能与关键字相同
C. 函数可以没有参数
D. 函数可以没有返回值,此时函数类型应定义为void
8. 若有定义“int p = new int;”,使用完该动态分配的内存后,应使用( )释放内存
A. free(p);
B. delete p;
C. delete[] p;
D. free[] p;
9. 以下哪种运算符的优先级最高( )
A. +
B.
C. %
D. ()
10. 对于“if(a > b? a : b)”,若a = 3, b = 5,则该表达式的值为( )
A. 3
B. 5
C. 8
D. 不确定
二、多项选择题(总共5题,每题4分,每题至少有两个正确答案,请将正确答案填在括号内)
1. 以下哪些是合法的C++注释方式( )
A. // 这是一行注释
B. / 这是多行注释 /
C. 这是注释
D. -- 这是注释
2. 以下关于数据类型转换的说法,正确的是( )
A. 自动类型转换是由系统自动完成的
B. 强制类型转换可能会导致数据丢失或精度降低
C. 不同类型的数据在进行运算时,会先进行类型转换
D. 字符型数据可以自动转换为整型数据
3. 以下哪些循环结构可以实现循环次数不确定的循环( )
A. for循环
B. while循环
C. do - while循环
D. goto语句
4. 以下关于数组的说法,正确的是( )
A. 数组元素的类型必须相同
B. 数组名是一个常量,不能被重新赋值
C. 可以通过数组名访问数组中的元素
D. 数组在内存中是连续存储的
5. 以下哪些函数原型是正确的( )
A. int func(int a, int b);
B. void func(int a, b);
C. float func(int a, int b) {}
D. double func(int a, int b) { return a + b; }
三、判断题(总共10题,每题2分,正确的打√,错误的打×)
1. 在C++中,变量必须先声明后使用。( )
2. 赋值运算符的优先级高于算术运算符。( )
3. 字符型数据在内存中存储的是其对应的ASCII码值。( )
4. for循环只能用于已知循环次数的情况。( )
5. 数组下标从0开始。( )
6. 函数可以嵌套定义。( )
7. 动态分配的内存空间在程序结束时会自动释放。( )
8. 逻辑与运算符“&&”的优先级高于逻辑或运算符“||”。( )
9. 可以使用“sizeof”运算符获取变量或数据类型所占用的字节数。( )
10. 字符串常量在内存中存储时,会自动在末尾添加'\0'。( )
四、简答题(总共3题,每题10分)
1. 简述C++中变量声明和定义的区别。
2. 请说明if - else语句和switch语句的适用场景。
3. 简述函数重载的概念及实现条件。
五、程序设计题(总共2题,每题15分)
1. 编写一个程序,输入一个整数,判断它是否为偶数。
2. 编写一个函数,计算并返回两个整数的最大公约数。
答案:
一、选择题
1. A
2. B
3. D
4. B
5. A
6. D
7. B
8. B
9. D
10. B
二、多项选择题
1. AB
2. ABCD
3. BC
4. ABD
5. AD
三判断题
1. √
2. ×
3. √
4. ×
5. √
6. ×
7. ×
8. √
9. √
10. √
四、简答题
1. 变量声明只是向编译器表明变量的类型等信息,不分配内存;变量定义则是声明并为变量分配内存空间。例如“extern int a;”是声明,“int a = 5;”是定义。
2. if - else语句适用于根据条件进行二分支判断的情况;switch语句适用于根据一个表达式的值进行多分支选择的情况,尤其当判断条件是整型或字符型常量表达式时更合适。
3. 函数重载是指在同一作用域内,可以定义多个同名函数,这些函数的参数列表不同。实现条件:函数名相同;参数个数不同或参数类型不同或参数顺序不同。
五、程序设计题答案
1.
```cpp
include <iostream>
using namespace std;
int main() {
int num;
cout << "请输入一个整数:";
cin >> num;
if(num % 2 == 0) {
cout << num << " 是偶数" << endl;
} else {
cout << num << " 是奇数" << endl;
}
return 0;
}
```
2.
```cpp
include <iostream>
using namespace std;
int gcd(int a, int b) {
while(b!= 0) {
int temp = b;
b = a % b;
a = temp;
}
return a;
}
int main() {
int num1, num2;
cout << "请输入两个整数:";
cin >> num1 >> num2;
int result = gcd(num1, num2);
cout << num1 << " 和 " << num2 << " 的最大公约数是:" << result << endl;
return 0;
}
```
展开阅读全文