<!doctype html>
面向对象方法最核心的特征是类、对象和封装。 (2分)
对象封装了属性和操作,对象间通过消息传递实现相互通信。 (2分)
C++程序必须有且只能有一个main()方法,其返回类型是int,可以省略。 (2分)
constexpr int max = length()是正确的。 (2分)
auto size = sizeof(int)是正确的,其中size的数据类型是整形。 (2分)
decltype类型指示符的作用是选择并返回操作数的类型。 (2分)
逗号表达式的结果是最左边表达式的值。 (2分)
switch语句之后的小括号中,只能写入整值表达式,case后可以接整值表达式。 (2分)
C++关系运算和逻辑运算的结果是int数据类型。 (2分)
C++的基本数据类型变量所占用的存储空间大小是固定的。 (2分)
const既可以限定指针本身的值不可以修改,也可以限定指针指向的对象不可以修改。 (2分)
void* 指针可以持有任何类型对象的地址值,也可以引用指向的对象。 (2分)
为函数参数指定默认值必须写在函数的定义中。 (2分)
重载函数通过参数表进行区分,差别包括形参的类型、数量和名称。 (2分)
inline函数可以在调用点进行代码展开,提高程序执行效率。 (2分)
下列打开文件的表达式中,错误的是: (2分)
下列符号中可以用作 C++标识符的是 (2分)
若有下面的语句: (2分)
string s="Hello";
s.append("123");
cout << s.at(5) << endl;
则执行后程序的输出结果是
编写C++程序一般需经过的几个步骤依次是()(2分)
下列关于C++与C语言的关系描述中,错误的是____。 (2分)
使用C++标准string类定义一个字符串,需要包含的头文件____。 (2分)
关于面向对象程序设计
面向对象程序设计主要考虑的是提高软件的 ▁▁▁▁▁ 。(2分)
在int a[ ][3] = { {1,4}, {3,2}, {4,5,6}, {0} };
中,a[2][1]
的值是( )。 (2分)
cout 是由I/O 流库预定义的( )。 (2分)
设void f1(int * m,long & n);int a;long b;则以下调用合法的是()。 (2分)
以下程序存在的问题是: (2分)
void fun()
{
int *num1, *num2;
num1 = new int[10];
num2 = new int[20];
num1[0] = 100;
num2[0] = 300;
num1 = num2;
delete [] num1;
}
下列关于引用的说法,错误的是____。 (2分)
设int x;,则经过()后,语句*px=0;可将x值置为0。 (2分)
const int *p说明不能修改()。 (2分)
下列说法中正确的是( ) (2分)
在C++中,关于下列设置缺省参数值的描述中,()是正确的。 (2分)
对定义重载函数的下列要求中,( )是错误的。 (2分)
下面程序的运行结果是 (2分)
#include<iostream> using namespace std;
void fun(int * a, int * b) {
int x = *a;
*a = *b;
*b = x;
cout << *a << *b << " ";
}
int main() {
int x = 1, y = 2;
fun(&x, &y);
cout << x << y << endl;
return 0;
}
以下选项中,是正确的函数默认形参设置的是。 (2分)
命名空间应用于: (2分)
在面向对象程序设计中,(1分)是指一个类实例和另一个类实例之间传递的信息。
在面向对象方法中,类的实例称为(1分)。
write the output of the code below.
#include <iostream>
using namespace std;
int& f(int &i )
{
i += 10;
return i ;
}
int main()
{
int k = 0;
int& m = f(k);
cout << k << "#";
f(m)++;
cout << k << endl;
return 0;
}
(1分)
下面程序的运行结果是(2分)。
#include <iostream> using namespace std;
void main( ) {
int i=1;
while (i<=15) {
i++;
if (i%3!=2)
continue;
else
cout <<"i="<<i<<" ";
}
}
设计一个void类型的函数Swap,该函数有两个引用类型的参数,函数功能为实现两个整数交换的操作。
裁判测试程序样例:
#include <iostream> using namespace std;
/* 请在这里填写答案 */
int main()
{
int a, b;cin >> a >> b; Swap(a, b); cout << a << " " << b << endl; return 0;
}
输入样例:
3 5
输出样例:
5 3
设计一个重载函数add,该函数有两个参数,可以实现两个类型相同的参数相加的操作,函数返回相加的结果。两个参数可以是整数、实数和字符串,但必须保证两个参数类型相同。
裁判测试程序样例:
#include <iostream> #include <string> #include <iomanip> using namespace std;
/* 请在这里填写答案 */
int main()
{
int a, b;
double c, d;
string s1, s2;cin >> a >> b; cin >> c >> d; cin >> s1 >> s2; cout << add(a, b) << endl; cout << fixed << setprecision(2) << add(c, d) << endl; cout << add(s1, s2) << endl; return 0;
}
输入样例:
3 5
3.3333 5.555555
hello world
输出样例:
8
8.89
helloworld