2024年大学试题(计算机科学)-C++语言程序设计考试近5年真题集锦(频考类试题)带答案_第1页
2024年大学试题(计算机科学)-C++语言程序设计考试近5年真题集锦(频考类试题)带答案_第2页
2024年大学试题(计算机科学)-C++语言程序设计考试近5年真题集锦(频考类试题)带答案_第3页
2024年大学试题(计算机科学)-C++语言程序设计考试近5年真题集锦(频考类试题)带答案_第4页
2024年大学试题(计算机科学)-C++语言程序设计考试近5年真题集锦(频考类试题)带答案_第5页
已阅读5页,还剩55页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

(图片大小可自由调整)2024年大学试题(计算机科学)-C++语言程序设计考试近5年真题集锦(频考类试题)带答案第I卷一.参考题库(共100题)1.一个项目中包含3个函数:main、fa和fb函数,它们之间不正确的调用是()A、在main函数中调用fb函数B、在fa函数中调用fb函数C、在fa函数中调用fa函数D、在fb函数中调用main函数2.下面程序中的函数char*delc(char*s,char-c);去掉字符串s中的字符c,并将新得到的字符串返回,完成该函数。 注意:部分源程序给出如下。请勿改动主函数main和其它函数中的任何内容,仅在函数的花括号中填入所编写的若干语句。 3.const关键字有哪些作用?4.编写函数eachPrime,判断两个正整数m和n是否为互质数。若是,返回1;否则,返回-1。互质数:最大公约数为1的两个数称为互质数。 注意:部分源程序给出如下。请勿改动主函数main和其它函数中的任何内容,仅在函数的花括号中填入所编写的若干语句。 5.采用函数重载的目的在于()。A、实现共享B、减少空间C、提高速度D、使用方便,提高可读性6.一个整数数列,它的第一项是0,第二项是1,以后每项都是前两项之和,编写求前n项之和的函数GetSum(int-n)。 注意:仅在标有"Program"和"End"的注释行之间补充填写代码。请勿改动主函数main和其它任何已有内容。 7.当一个类对象离开它的作用域时,系统自动调用该类的()A、 无参构造函数B、 带参构造函数C、 拷贝构造函数D、 析构函数8.析构函数不能被继承。9.可见性的一般规则是什么?10.C++语言程序中使用控制符进行格式输出时应包含的头文件是()。A、fstream.hB、iomanip.hC、math.hD、strstrea.h11.比较Break语句与Continue语句的不同用法。12.在一个类中定义了多个子对象,其构造函数调用子对象的构造函数的顺序取决于什么?13.有语句inta=1,b=2;以下正确的输出语句是()A、B、C、D、14.关于C++与C语言关系的描述中,()是错误的。A、C语言是C++语言的一个子集B、C语言与C++语言是兼容的C、C++语言对C语言进行了一些改进D、C++语言和C语言都是面向对象的15.简述使用友元的利弊。16.若有类W说明classW{inta;public:voidfConst(int&)const;};,则函数fConst的正确定义是()A、voidW::fConst(int&k)const{k=a;}B、voidW::fConst(int&k)const{k=a++;}C、voidW::fConst(int&k)const{cin>>a;}D、voidW::fConst(int&k)const{a=k;}17.下面是一个输入半径,输出其面积和周长的C++程序,在下划线处填上正确的语句。 18.输入一个字符ch和一个以回车符结束的字符串(少于80个字符),统计字符串中与ch相同的字母个数。19.求输入十个数最大最小值。20.编写程序,计算100之内可以被13整除的自然数之和。21.在MFC编程中,通过Invalidate(TRUE)可以发出重绘视图的消息。22..#defineDOUBLE(x)x+x,i=5*DOUBLE(5);i是多少?23.在OOP中,当类的继承方式为公有继承时,基类的()和()的访问属性在派生类中不变,基类的()不可访问。24.什么叫函数的形参?25.在下列运算符中,()优先级最高。A、26.下面对友元的错误描述是()A、关键字friend用于声明友元B、一个类中的成员函数可以是另一个类的友元C、友元函数访问对象的成员不受访问特性影响D、友元函数通过this指针访问对象成员27.函数模板在编译时不生成可执行代码。28.函数char*dels(char*s,char*c);去掉字符串s中的子字符串c,并将新得到的字符串返回,完成该函数(不考虑去掉子字符串c后形成的新的子字符串c)。例如s为”abcabcd”,c为”bc”,则调用该函数后,s为”aad”。 注意:部分源程序给出如下。请勿改动主函数main和其它函数中的任何内容,仅在函数的花括号中填入所编写的若干语句。 29.子对象的初始化要在构造函数的成员初始化列表中进行。30.百钱买百鸡问题:鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一,百钱买百鸡,问鸡翁、母、雏各几何?31.在C++中,关于下列设置参数默认值的描述中,()是正确的。A、不允许设置参数的默认值B、设置参数默认值只能在定义函数时设置C、设置参数默认值时,应该是先设置右边的再设置左边的D、设置参数默认值时,应该全部参数都设置32.计算函数参数顺序引起的二义性完全是由不同的编译系统决定的。33.写一个函数,计算x的n次方。函数原型是long-myfun(int-x,int-n)。 注意:部分源程序给出如下。请勿改动主函数main和其它函数中的任何内容,仅在注释形式标识Program和End之间填入所编写的若干语句。 34.设函数fun()是一个不属于任何类的普通函数,则在调用该函数时只能用fun()方式,而不能用::fun()方式来调用。35.下面字符序列中,合法的常量是()。A、078B、5LC、9e7.5D、‟a1‟36.预定义的提取符和插入符不可以再重载。37.编写主程序条用带实数r和整数n两个参数的函数并输出r的n次幂。38.重载函数要求()A、函数名不同,函数参数个数相同B、函数名不同,函数参数类型相同C、函数名相同,函数类型各不相同D、函数名相同,函数类型也相同39.请编程实现:对于给定的一个百分制成绩,输出相应的五分制成绩。设:90分以上为‘A’,80—89分为‘B’,70—79分为‘C’,60—69分为‘D’,60分以下为‘E’。40.使用关闭文件函数close()关闭一个文件时,但流对象仍存在。41.虚函数是用virtual关键字说明的成员函数。42.从文件infile162.txt中连续读入10个以磅为单位的重量值,将其转换为以千克为单位的值并求和,将计算所的和sum输出到文件out162.txt中。一磅等于0.454千克。 注意:部分源程序给出如下。请勿改动主函数main和其它函数中的任何内容,仅在函数的花括号中填入所编写的若干语句。 43.编写程序,输入任意一个1~7之间的整数,将他们转换成对应的英文单词.例如:1转换成Monday,7转换成Sunday。44.流的状态包含流的内容、长度和下一次提取或插入操作的当前位置。45.静态联编工作是在()阶段完成的。46.有以下说明语句:structWorker{intno;charname[20];};Workerw,*p=&w;则下列错误的引用是()A、w.noB、p->noC、(*p).noD、*p.no47.运算符重载使用成员函数方法和友元函数方法是否都可以?并且是没有区别的吗?48.简述队列和栈的异同49.分别定义Teacher(教师)类和Cadre(干部)类,采用多重继承方式有这两个类派生出新类Teacher_Cadre(教师兼干部)。要求:  (1)、在两个基类中的包含姓名、年龄、性别、地址、电话、等数据成员。  (2)、在Teacher类中包含数据成员title(职称),在Cadre类中还包含数据成员post(职务),在Teacher_Cadre类中还包含数据成员wages(工资)。  (3)、对两个基类中的姓名、年龄、性别、职称、地址、电话等数据成员用相同的名字,在引用数据成员时制定作用域。  (4)、在类中声明成员函数,在类外定义成员函数 。 (5)、在派生类Teacher_cadre的成员函数show中调用Teacher类中的display函数。输出姓名,年龄,性别,职称,地址,电话,然后再用cout语句输出职务与工资。50.含有()的类称为抽象类。它不能定义对象,但可以定义()和()。51.不同对象可以调用相同名称的函数,但可导致完全不同的行为的现象称为()。52.什么叫多级指针变量?53.编写一个函数int-day_of_month(int-year,int-month)输入年(year)、月(month),打印出该年份该月的天数。(若输入数据不合法,要求返回值为0)公历闰年的计算方法为:能被4整除且不能被100整除的为闰年或者能被400整除的是闰年。 注意:部分源程序给出如下。请勿改动主函数main和其它函数中的任何内容,仅在程序中介于Program和End的部分填入所编写的若干语句。 54.在创建派生类对象时,构造函数的执行顺序是()A、对象成员构造函数―基类构造函数―派生类本身的构造函数B、派生类本身的构造函数―基类构造函数―对象成员构造函数C、基类构造函数―派生类本身的构造函数―对象成员构造函数D、基类构造函数―对象成员构造函数―派生类本身的构造函数55.类的指针成员为什么要用new另辟内存空间?56.在声明一个类时,必须同时声明类的数据成员和成员函数。57.完成函数isjishu的编写,该函数判断n是否是奇数,是则返回true,否则返回false。 注意:部分源程序给出如下。请勿改动主函数main和其它函数中的任何内容,仅在函数的花括号中填入所编写的若干语句。 58.下列建立动态存储的语句正确的是()A、intp=newint[];B、intp=new[10];C、int*p=newint[10];D、int*p[10]=newint;59.在ios类中提供的控制格式的标志位中,八进制形式的标志位是()。A、hexB、decC、octD、basefield60.带有纯虚函数的类是()。61.编写函数myfun,实现如样张所示的函数计算,计算结果作为返回值返回。 注意:部分源程序给出如下。请勿改动主函数main和其它函数中的任何内容,仅在注释形式标识Program和End之间填入所编写的若干语句。 62.使用关键字class定义的类中默认的访问权限是私有(private)的。63.指针有哪些运算?请例举这些计算。64.请编写函数int-num_of_facs(int-n);计算一个正整数n的因子个数(包括1和自身)。 注意:部分源程序给出如下。请勿改动主函数main和其它函数中的任何内容,仅在函数的花括号中介于Program和End的部分填入所编写的若干语句。 65.C++语言中,既允许单继承,又允许多继承。66.函数的定义不可以嵌套,类的定义可以嵌套。67.将从文件输入的10个数按降序排列。 注意:仅在标有"Program"和"End"的注释行之间补充填写代码。请勿改动主函数main和其它任何已有内容。 68.写一个函数,取一个整数值并返回将此整数的各数字反序的数值。69.静态类标识符在它的作用域之外是不存在的。70.请编写程序,处理一个复数与一个double数相加的运算,结果存放在一个double型的变量d1中,输出d1的值,再以复数形式输出此值。定义Complex(复数)类,在成员函数中包含重载类型转换运算符:operatordouble(){returnreal;}。初值自拟。71.如果一个函数没有返回值,定义时需用void说明。72.在文件操作中,通常使用打开文件的流对象的值来判断打开文件是否成功。73.指向一维对象数组的指针是一个二级指针。74.定义一个字符串类String,用来存放不定长的字符串,重载运算符"<",用于两个字符串的小于的比较运算。初值自拟。75.C++语言中模板分为函数模板和类模板两种。76.假定AA为一个类,a为该类公有的数据成员,若要在该类的一个成员函数中访问它,则书写格式为()A、 aB、 AA::aC、 a()D、 AA::a()77.编程,求全部水仙花数。所谓水仙花数是指一个三位数,其各位数字立方的和等于该数。如:153=13+53+33。78.使用new运算符创建的对象称为堆对象。79.对象指针成员表示与对象引用相同。80.对于一个类的析构函数,其函数名与类名()A、 完全相同B、 完全不同C、 只相差一个字符D、 无关系81.设N是一个四位数,它的9倍恰好是其反序数(例如:123的反序数是321),编程,输出所有满足条件的N。82.VoidSet(A&a);是类A中一个成员函数的说明,其中A&a的含义是()。A、类A的对象引用a作该函数的参数B、类A的对象a的地址值作函数的参数C、表达式变量A与变量a按位与作函数参数D、指向类A对象指针a作函数参数83.编程序,输入3个double类型的值,判断这3个值是否可以表示一个三角形的三条边。84.有if;若整型变量a、b的值相等时执行,则逻辑表达式是()A、a=bB、a!=bC、a-bD、!(a-b)85.分析下列程序的输出结果: 86.重载函数在调用时选择的依据中,错误的是()。A、参数个数B、参数的类型C、参数的位置D、函数的返回值类型87.面向对象程序设计的三大特征是封装性、继承性和()。88.写一个函数myfun,计算x的n次方并将结果返回。 注意:部分源程序给出如下。请勿改动主函数main和其它函数中的任何内容,仅在注释形式标识Program和End之间填入所编写的若干语句。 89.以下关于this指针的叙述中正确的是()A、任何与类相关的函数都有this指针B、类的成员函数都有this指针C、类的友员函数都有this指针D、类的非静态成员函数才有this指针90.友元函数能否访问类中的保护成员?友元函数访问类中私有成员与成员函数访问私有成员的形式相同吗?91.程序中的函数inv对数组m中的数据进行翻转转换,即将数组中第一个数和最后一个数交换、第二个数和倒数第二个数交换,依此类推。 注意:部分源程序给出如下。请勿改动主函数main和其它函数中的任何内容,仅在函数的花括号中填入所编写的若干语句。 92.创建对象时系统自动调用相应的构造函数为对象初始化,没有相应的构造函数时,系统会自动生成。93.可以用于命名变量的标识符是()A、3xB、constC、name_2D、94.如果表达式++j*k中的“++”和“*”都是重载的友元运算符,则采用运算符函数调用格式,该表达式还可以表示为()A、operator*(j.operator++(),k)B、operator*(operator++(j),k)C、operator++(j).operator*(k)D、operator*(operator++(j),)95.预定义的插入符从键盘上接收数据是不带缓冲区的。96.任何字符常量与一个任意大小的整型数进行加减都是有意义的。97.判断一个N*N的矩阵是否为对称矩阵,将原矩阵输出,判断结果输出。98.一个类可包含构造函数的个数是()A、0个B、0个或1个C、0个或多个D、1个或多个99.有一个time类,包含数据成员minute和sec,模拟秒表,每走一秒,满60。100.任何对象都可以使用delete运算符来释放。第I卷参考答案一.参考题库1.参考答案:D2.参考答案:3.参考答案: C.onst关键字至少有下列n个作用: (1)欲阻止一个变量被改变,可以使用const关键字。在定义该const变量时,通常需要对它进行初始化,因为以后就没有机会再去改变它了; (2)对指针来说,可以指定指针本身为const,也可以指定指针所指的数据为const,或二者同时指定为const; (3)在一个函数声明中,const可以修饰形参,表明它是一个输入参数,在函数内部不能改变其值;(这样既可以利用传地址、传引用的高效特性,又保证了传值的安全性) (4)对于类的成员函数,若指定其为const类型,则表明其是一个常函数,不能修改类的成员变量;还记得如果要修改成员变量,应该把成员变量声明为什么吗?mutable! (5)对于类的成员函数,有时候必须指定其返回值为const类型,以使得其返回值不为“左值”。4.参考答案:5.参考答案:D6.参考答案:7.参考答案:D8.参考答案:正确9.参考答案:可见性的一般规则是:标识符要声明在前,引用在后,在同一作用域中,不能声明同名的标识符。对于在不同的作用域声明的标识符,遵循的原则是:若有两个或多个具有包含关系的作用域,外层声明的标识符如果在内层没有声明同名标识符时仍可见,如果内层声明了同名标识符则外层标识符不可见。10.参考答案:B11.参考答案: Break使程序从循环体和switch语句内跳出,继续执行逻辑上的下一条语句,不能用在别处; Continue语句结束本次循环,接着开始判断决定是否继续执行下一次循环。12.参考答案:构造函数调用子对象的顺序取决于定义子对象的顺序,而与构造函数的成员初始化列表中给出的子对象速设无关。13.参考答案:D14.参考答案:D15.参考答案:使用友元的益处:在有些情况下,能够利用某些特定的全局函数或类的成员函数对某类的隐藏成员进行存取的这种特性是非常方便的,避免了将类中所有成员都设定为公有成员;使用友元的弊端:虽然声明友元可以方便的对类的非公有数据进行访问,但同时破坏了类的封装与信息隐藏性,并且难以维护。16.参考答案:A17.参考答案: 18.参考答案: 19.参考答案:20.参考答案: 21.参考答案:正确22.参考答案:i为30。23.参考答案:公有成员;保护成员;私有成员24.参考答案:形参是被调用函数接受调用函数传递过来的数据的参数。25.参考答案:D26.参考答案:D27.参考答案:正确28.参考答案:29.参考答案:正确30.参考答案:31.参考答案:C32.参考答案:错误33.参考答案:34.参考答案:错误35.参考答案:B36.参考答案:错误37.参考答案: 38.参考答案:C39.参考答案:40.参考答案:正确41.参考答案:正确42.参考答案:43.参考答案:44.参考答案:正确45.参考答案:编译46.参考答案:D47.参考答案:两种方都法可以。有区别,参数个数不同。48.参考答案:队列和栈都是线性存储结构,但是两者的插入和删除数据的操作不同,队列是“先进先出”,栈是“后进先出”。注意:区别栈区和堆区。堆区的存取是“顺序随意”,而栈区是“后进先出”。栈由编译器

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论