(图片大小可自由调整)
2025年大学试题(计算机科学)-C++语言程序设计考试近5年真题荟萃附答案
第I卷
一.参考题库(共80题)
1.定义函数mymult(int-m),已知一个正整数m,求m的各位数字之积f。 注意:部分源程序给出如下。请勿改动主函数main和其它函数中的任何内容,仅在函数的花括号中填入所编写的若干语句。
2.二进制数据文件流fdat读指针移到文件头的语句是()
A、fdat.seekg(0,ios::beg);
B、fdat.tellg(0,ios::beg);
C、fdat.seekp(0,ios::beg);
D、fdat.tellp(0,ios::beg);
3.键盘输入m和n(10mn≤32000),求出m~n间所有素数且按每行8个数形式输出。
4.对象的存储类只有外部的和静态的。
5.若有类模板声明:templateclassTclass{intk;public:Tclass(int);//……};以下正确的说明语句正确的是()
A、Tclass(double)t(10);
B、Tclasst(10);
C、Tclasst(10);
D、Tclasst(10);
6.编制一个程序,
7.关于类模板的静态数据成员,错误叙述的是()
A、一个类模板实例化的所有对象共享一个静态数据成员
B、每一个实例化的模板类都有自己的静态数据成员副本
C、一个模板类实例化的所有对象共享一个静态数据成员
D、类模板实例化的静态数据成员应该在文件范围内定义和初始化
8.执行下列语句后,x和y的值是() intx,y; x=y=1; ++x||++y;
A、1和1
B、1和2
C、2和1
D、2和2
9.析构函数不能被继承。
10.关于静态成员的阐述,下列描述错误的是()。
A、在创建对象前,静态成员不存在
B、静态成员是类的成员
C、静态成员不能是虚函数
D、静态成员函数不能直接访问非静态成员
11.预定义的提取符和插入符不可以再重载。
12.定义一个学生类,其中有3个数据成员:学号、姓名、年龄,以及若干成员函数。同时编写main函数使用这个类,实现对学生数据的赋值和输出。
13.int(*s[10])(int)表示的是什么
14.从键盘输入5个整数并存入一个数组中,再输入一个整数,在数组中查找该数是否存在。
15.输入一字符,若为大写字母,则小写输出;若为小写字母,则大写输出。
16.假定AB为一个类,则执行?“AB?a(2),?b[3],?*p[4];”语句时共调用该类构造函数的次数为()
A、?3
B、?4
C、?5
D、?9
17.简述什么是深拷贝和浅拷贝。
18.完成函数sortLine(char*line[],int-n)的编写。其参数line是一个指向字符串的指针数组,n是指针?数组元素的个数,该函数对这些字符串按降序排列。在比较了两个串的大小之后需要交换两个串时,只需交换line中指向两个字符串的指针,不必交换串本身。 注意:部分源程序给出如下。仅在标有Program和End的注释行之间补充代码,请勿改动其它内容。
19.下面程序中的函数函数int-mylist(int-n);计算数列中的第n个数并返回,数列的定义如下:0,1,2,5,12…即,第0个数为0,第1个数为1,第n(n1)个数?为第n-2个数加上2倍的第n-1个数。完成该函数。 注意:部分源程序给出如下。请勿改动主函数main和其它函数中的任何内容,仅在函数的花括号中填入所编写的若干语句。
20.编写一段程序,从文件f1.txt中读入单词(每个单词长度不超过40个字母,单词之间以空格相间隔),在碰到单词done时结束,并将读入的单词个数(不包括done)存放在count变量中。 注意:部分源程序给出如下。请勿改动主函数main和其它函数中的任何内容,仅在注释形式标识Program和End之间填入所编写的若干语句。
21.C++语言是一种以编译方式实现的高级语言。
22.派生类的对象可以直接访问的基类成员是()。
A、公有继承的公有成员
B、保护继承的公有成员
C、私有继承的公有成员
D、公有继承的保护成员
23.const?char?*p说明了p是指向()的指针。