执行以下 C++ 代码后,c 的数值是( )。
01int a = 10, b = 3; 02double c = a / b;
C: 3.0。int/int=3截断,赋double=3.0
下列 C++ 表达式的结果为 true 的是( )。
C: 真。(10!=10=0)||(5>=3=1)=1
以下关于 C++ 数组的说法,错误的是( )。
D: arr[5]越界访问不存在"最后一个元素"
执行以下 C++ 代码后,变量 sum 的值是( )。
01int sum = 0; 02for (int i = 1; i <= 5; i += 2) { 03 sum += i; 04 int sum=0; 05}
B: 9。for i=1,3,5累加sum=1+3+5=9
要正确定义一个返回两个整数中较大值的函数 max,应该使用( )。
B: int max(int a, int b)。正确返回int
执行以下 C++ 代码后,数组 arr 的内容是( )。
01int arr[4] = {1, 2, 3}; 02arr[3] = arr[0] + arr[2];
B: 1 2 3 4。arr[3]=1+3=4
以下关于 C++ 函数的描述,正确的是( )。
(跳,需完整选项)
以下 C++ 代码 count++ 执行的次数是( )。
01int i = 10; 02int count=0; 03while (i > 0) { 04 i -= 3; 05 continue; 06 count++; 07}
D: 0。continue跳过后count++不达,i=10→7→4→1→-2,4次循环,但count++不执行
以下 C++ 代码段的输出是( )。
01for (int i = 0; i < 4; i++) { 02 for (int j = 0; j <= i; j++) { 03 cout << j; 04 } 05 cout << "#"; 06}
A: 0#01#012#0123#。i=0输出"0#",i=1输出"0"+"1"+"#",i=2"0"+"1"+"2"+"#",i=3"0123#"
以下关于 C++ 变量作用域的说法,错误的是( )。
C: 全局变量。在所有函数外部声明的变量,在整个程序中有效
关于以下代码的说法正确的是( )。
01int reversed = 0; 02while (x != 0) { 03 int digit = x % 10; 04 x /= 10; 05 reversed = reversed * 10 + digit; 06}
A: 能反转任何位数。int范围可处理
以下 C++ 代码试图查找数组中的最大值,划线处应填入( )。
01#include <iostream> 02using namespace std; 03int findMax(int arr[], int size) { 04 int maxVal = ____________; // 划线处 05 for (int i = 1; i < size; i++) { 06 if (arr[i] > maxVal) { 07 maxVal = arr[i]; 08 } 09 } 10 return maxVal; 11}
C: arr[0]。标准写法,初值取第一个元素
以下关于 C++ 函数的说法,正确的是( )。
D: C++11后函数必须显式声明返回类型
以下 C++ 代码中存在几处错误( )。
01#include <iostream> 02using namespace std; 03int main() { 04 const int SIZE = 5; 05 int arr[SIZE]; 06 for (int i = 0; i <= SIZE; i++) { 07 arr[i] = i * 2; 08 } 09 cout << arr[SIZE] << endl; 10 return 0; 11}
C: 2处。i<=SIZE越界+内层int sum重复定义
以下关于 C++ 中 string 类和字符数组(char[])的说法,错误的是( )。
D: 描述正确项。string和char[]都能用==比较内容
sizeof('a') 的结果总是 ,因为 'a' 是一个字符。
错。C++中'a'是int,sizeof('a')=sizeof(int),C中是1但C++不保证
在 C++ 中,所有全局变量如果没有显式初始化,都会被自动初始化为 。
错。全局基本类型不保证初值0(实现BSS段可能但标准未规定)
do { ... } while (false); 循环体内的语句至少会被执行一次。
正确。do-while先执行后判断,至少1次
在 C++ 中,++i 是一个左值表达式,而 i++ 是一个右值表达式。
错。++i是右值,i++是左值(C++标准)
对于 enum Color { RED, GREEN, BLUE };,RED 的类型是 int。
正确。enum底层类型int,RED值为0
#define SQUARE(x) x * x 是一个安全的宏定义,SQUARE(2+3) 会正确计算出 。
错。SQUARE(2+3)=2+3*2+3=11不是25(无括号)
在 C++ 中,char 类型的取值范围总是 到 。
正确。C++标准char范围-128~127
表达式 a > b ? a : b = 10; 一定是合法的 C++ 代码。
正确。三目a>b?a:b是左值可赋值
#include "file.h" 和 #include <file.h> 在编译器查找头文件时的搜索策略是完全相同的。
错。""先查当前目录,<>先查系统目录
在同一个作用域内,extern 声明的变量可以多次定义。
错。extern只能声明一次,定义可一次