昆明理工大学《C++程序设计》试题库(含答案)_第1页
昆明理工大学《C++程序设计》试题库(含答案)_第2页
昆明理工大学《C++程序设计》试题库(含答案)_第3页
昆明理工大学《C++程序设计》试题库(含答案)_第4页
昆明理工大学《C++程序设计》试题库(含答案)_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

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

文档简介

C程序设计试题库(含答案)一、填空题(共10题,每题2分,共20分)【29选10】1QT是1994年成立的总部位于挪威奥斯陆的奇趣科技公司提供的跨平台C图形用户界面应用程序开发框架。它既可以开发GUI【图形用户界面】程序,也可开发非GUI程序,如【控制台工具】和服务。2GCC是GNUCCOMPILER的英文缩写,是LINUX系统下程序的编译器。GCC最初只是一个【C】语言编译器,随着众多自由开发者的加入和GCC自身的发展,如今的GCC已经是一个包含C,C,ADA,OBJECTC和JAVA等众多语言的编译器了。所以,GCC也由原来的GNUCCOMPILER变为GNUCOMPILERCOLLECTION。也就是GNU编译器家族的意思。当然,如今的GCC借助于它的特性,具有了在一个平台下编译另一个平台代码的【交叉】编译器功能。3MINGW是【WINDOWS】平台下的GCC移植版。4【QTDESIGNER】是一个功能强大的GUI布局与窗体构造器,能够在所有支持平台上,以本地化的视图外观与认知,快速开发高性能的用户界面。是QT用来设计应用程序图形界面的工具。5【QT/EMBEDDED】是一个完整的包含GUI和基于LINUX的嵌入式平台开发工具。6项目编译模式有两种调试【DEBUG】模式和【发布】(RELEASE模式。7编译并连接生成项目文件必须进行【BUILD】操作,产生以【项目名称】命名的可执行的EXE文件。8C对C的“增强”,表现在两个方面1在原来面向过程的机制基础上,对C语言的【功能】做了扩充。2增加了【面向对象】的机制。9使用CIN或COUT进行IO操作时,在程序中必须包含头文件【IOSTREAMH】,否则编译时要产生错误。10在C程序中,仍然可以沿用传统的【STDIO】函数库中的IO函数(如PRINTF、SCANF函数)。11编译系统为每一个字符串变量分配【4】个字节,用于存放字符串的地址,而不是直接存放字符串本身。12C/C中的指针本质上就是一个存放变量【地址】的变量。具体应用于数组、函数参数和动态内存的管理中。13引用就是为一个已定义的变量或对象另起一个【名字】。14“类”是一组具有相同【属性】和【行为】的对象的抽象。15消息MESSAGE)传递机制是面向对象系统中对象之间交互的途径。消息是对象之间发出的行为请求,调用对象中的【函数】就是向该对象发送一个消息,要求该对象实现某一【行为】。方法对象所能实现的行为(操作)。16两种形式的多态。编译时的多态性通过【重载】来实现。运行时的多态性通过【虚函数】实现。17公有成员是提供给外部的接口,类外对象或对象的引用用【】运算符访问对象成员,对象指针用【】运算符访问对象成员。18流指数据从一个位置流向另一个位置,流类对象可以建立和删除。程序中,对数据的输入/输出是以【字节】流实现的。19【FSTREAMH】头文件处理文件信息,包括建立文件,读/写文件的各种操作接口。20C的流库预先定义了四个流对象CIN、【COUT】、【CERR】和【CLOG】。21各种计算机应用系统通常把一些相关信息组织起来保存在外存储器中,称为文件。C把文件看成无结构的字节流,编码方式有【文本文件】和【二进制】文件。22程序中使用“OFSTREAMOUTFILE;”建立一个【输出】文件流对象,“OUTFILEOPEN“DNEWFILEDAT“,IOSOUT;”连接一个外存文件,指定打开方式为【写】。23QT环境中两种开发图形界面应用程序的方法是【命令行】方法和【集成环境开发】方法。24事件指的是那些能够被对象识别的在程序执行时由【系统自身】或【用户】所引发的一些事件。25图形界面程序是基于事件驱动(用户驱动)的系统,如单击鼠标时会产生【CLICKED】事件,双击鼠标会产生【DOUBLECLICKED】事件。26QT的信号和槽的语法形式是【CONNECT】SENDER,【SIGNAL】SIGNAL,RECEIVER【SLOT】SLOT。27如果要向一个文件尾部添加数据,那么,设置打开文件的方式为【IOSAPP】。28在命令行窗口中执行以【QMAKEPROJECT】命令生成一个与平台无关的项目文件PRO。29在命令窗口中执行【MINGW32MAKE】命令生成可执行文件EXE。二、选择题(每题只有一个正确答案,将正确答案的序码填入题目后的括号内,共15题,每题2分,共30分)【35选15】1关于窗体的说法,下列哪一句有错误【A】A、一个应用程序项目只能有一个窗体B、每个窗体必须有一个唯一的窗体名字,创建某些项目时会自动创建项目的主窗体MAINWINDOWC、程序员可以通过窗体的属性窗口更改窗体的名字。可增加新的窗体D、以上都不正确2关于C中对象的描述,下列哪一句有错误【C】A、对象是现实世界中具有属性、方法和事件的实体B、C程序将现实世界中的实体对象模型化,描述为数据和代码C、图形界面上的各种控件、窗口等不是对象D、数据描述对象状态的属性,代码描述该对象可以执行的行为3有关模板,下列哪一句叙述有错误【B】A、模板是C类型参数化的多态工具,C提供函数模板和类模板B、模板中的类型参数在模板定义中可以不出现C、模板由编译器根据实际数据类型实例化,生成可执行代码。D、实例化的函数模板称为模板函数;实例化的类模板称为模板类4关于类继承的特性,下面哪一条叙述有错【C】A、类的继承机制,允许在保持原有类特性的基础上,为其继承类进行更具体、更详细的类的定义B、即可以定义一个包含公共成员的基类,通过继承从基类中派生出新类C、不可为新类增添新的属性和操作,不可以改写基类的部分内容D、类的多级继承与派生形成一个类簇5以下有关字符串的叙述哪一个是错误的【C】A、一个字符串数组包含若干个字符串变量。B、每个字符串元素的长度是可以变化的,同一个元素重新赋值,其长度也可发生变化。C、字符串数组与字符数组相同。D、每一个字符串元素中只包含字符串本身的字符而不包括0。6程序编译时发生的错误不可能是【B】。A、语法错误B、用户操作C、文件错误D、逻辑错误7类型修饰符UNSIGNED修饰【D】类型是错误的。A、CHARB、INTC、LONGINTD、FLOAT8友元关系【B】A、是类与类的关系B、不能继承C、是一个父类与子类的关系D、不能提高程序的运行效率9IF语句的控制条件【D】。A、只能用关系表达式B、只能用关系表达式或逻辑表达式C、只能用逻辑表达式D、可以用任何表达式10下列说法正确的是【A】。A、一个类的对象可以是另一个类的成员B、一个类的对象可以作为另一个类的派生类C、一个类定义在另一个类中D、以上说法均正确11关于DELETE运算符的下列描述中,【C】是错误的。A、它必须用于NEW返回的指针B、使用它删除对象时要调用析构函数C、对一个指针可以使用多次该运算符D、指针名前只有一对方括号符号,不管所删除数组的维数12在声明类时,下面的说法正确的是【C】。A、可以在类的声明中给数据成员赋值B、数据成员的数据类型可以是REGISTERC、PRIVATE,PROTECTED,PUBLIC可以按任意顺序出现D、没有用PRIVATE,PROTECTED,PUBLIC定义的数据成员是公有成员13使用派生类的主要原因是【A】。A、提高代码的可重用性B、提高程序的运行效率C、加强类的封装性D、实现数据的隐藏14如果在基类中将SHOW函数声明为不带返回值的纯虚函数,正确的写法是【C】。A)VIRTUALSHOW0B)VIRTUALVOIDSHOWC)VIRTUALVOIDSHOW0D)VOIDSHOW0VIRTUAL15下面哪个变量名是合法的变量名【D】。A、FRIENDB、VARC、3XYZD、FLOAT16一个类的析构函数【A】。A、唯一的B、允许重载C、至多可有两个D、只能是缺省的17在一个函数中,要求通过函数来实现一种不太复杂的功能,并且要求加快执行速度,选用【A】。A、内联函数B、重载函数C、递归调用D、嵌套调用18当一个派生类公有继承一个基类时,基类中的所有公有成员成为派生类的【D】。A、友元B、PRIVATE成员C、PROTECTED成员D、PUBLIC成员19【D】不是构造函数的特征。A、构造函数的函数名与类名相同B、构造函数可以重载C、构造函数可以设置缺省参数D、构造函数必须指定类型说明20重载函数在调用时选择的依据中,【B】是错误的。A、函数的名字B、函数的返回值C、参数的个数D、参数的类型21在C中,关于下列设置默认参数值的描述中,【C】是正确的。A、不允许设置默认参数值B、在指定了默认值的参数右边,不能出现没有指定默认值的参数C、只能在函数的定义性声明中指定参数的默认值D、设置默认参数值时,必须全部都设置22设置虚基类的目的是【B】。A、简化程序B、消除二义性C、提高运算效率D、减少目标代码23有关运算符重载正确的描述是【D】。A、C语言允许在重载运算符时改变运算符的操作数个数B、C语言允许在重载运算符时改变运算符的优先级C、C语言允许在重载运算符时改变运算符的结合性D、C语言允许在重载运算符时改变运算符原有功能24类的构造函数被自动调用执行的情况是在定义该类的【C】。A、成员函数时B、数据成员时C、对象时D、友元函数时25说明友元函数使用的关键字是【A】。A、FRIENDB、STATICC、CONSTD、COLATILE26已知类X中的一个成员函数说明如“VOIDSETXCLASSARRAY/定义类PUBLICVOIDSET_VALUEVOIDMAX_VALUEVOIDSHOW_VALUEPRIVATEINTARRAY10INTMAXVOIDARRAYSET_VALUE/定义类的函数INTIFORI0IARRAYIVOIDARRAYMAX_VALUE/定义类的函数INTIMAXARRAY0FORI0IUSINGNAMESPACESTDLONGFACINTN/定义一个函数FAC,其参数为N。INTI1LONGFIFNNUMFACFACNUM/调用FAC函数,将实参NUM的值传递给函数FAC的虚参N。/此时,N的值就是NUM值,函数运行后,返回函数计算的结果F。/本语句进一步将F值赋给FAC。IFFAC1/如果返回值为1,则说明输入的NUM是非法的,应对程序的运行者提出必要的提示。COUTINCLUDEUSINGNAMESPACESTDINTMAINCHARNAME1LIUHEWENCOUTUSINGNAMESPACESTDDATESETANDDISPDATESETANDDISPINTY,INTM,INTD/YEARYMONTHMDAYD/初始化YEARYMONTHMDAYDCOUTUSINGNAMESPACESTDINTMAIN/DATESETANDDISPTODAY/定义TODAY,取初始值/TODAYDATEDISP/调用DATEDISP显示TODAY/DATESETANDDISPTOMORROWTODAY/定义TOMORROW,其日期会增加1/TOMORROWDATEDISPDATESETANDDISPDATE2/用类“DATESETANDDISP”定义对象数组(DATE0和DATE1,构造函数运行两次DATE0DATEDISPDATE1DATEDISPDATE1DATESET2016,10,20DATE1DATEDISPRETURN0答程序功能日期自动增加1天,测试析构函数的作用。运行结果初始化一个日期对象初始化一个日期对象2016年10月19日2016年10月19日创建一个日期对象2016年10月20日撤销对象。撤销对象。5本程序运行后不需要用户输入。INCLUDEUSINGNAMESPACESTDCLASSSTUDENTPUBLICVIRTUALVOIDCALCULATIONCOUTUSINGNAMESPACESTDCLASSCOMPLEXPRIVATEDOUBLEREALDOUBLEIMAGPUBLICCOMPLEXDOUBLEREAL0,DOUBLEIMAG0THISREALREALTHISIMAGIMAGVOIDSHOWCCOMPLEXOPERATORCOMPLEXCFRIENDCOMPLEXOPERATORCOMPLEXCOM1,INTXFRIENDCOMPLEXOPERATORINTX,COMPLEXCOM1COMPLEXCOMPLEXOPERATORCOMPLEXCRETURNCOMPLEXREALCREAL,IMAGCIMAGVOIDCOMPLEXSHOWCCOUT0COUTINCLUDEINCLUDE“QTEXTCODEC“/添加支持中文显示头文件INCLUDE/添加水平方向布局管理器头文件INCLUDE/添加命令按钮类头文件INTMAININTARGC,CHARARGV/创建一个QAPPLICATION类的对象APP,用于管理整个应用程序所用到的资源。QAPPLICATIONAPPARGC,ARGV/使用GBK汉字编码才能在WINDOWS中正确显示汉字QTEXTCODECCODECQTEXTCODECCODECFORNAME“GBK“QTEXTCODECSETCODECFORTRCODECQTEXTCODECSETCODECFORLOCALECODECQTEXTCODECSETCODECFORCSTRINGSCODEC/创建一个QLABEL类型的窗口部件LABEL,用于显示提示。QLABELLABELNEWQLABEL“各位好,欢迎来到QT世界“/创建一个按钮,同时设置其TEXT属性值为“退出”QPUSHBUTTONQUITBUTTONNEWQPUSHBUTTON“退出“/把“退出”按钮的CLICK信号与本应用程序的QUIT槽建立链接QOBJECTCONNECTQUITBUTTON,SIGNALCLICKED,/创建一个窗体对象MYWINDOWQWIDGETMYWINDOWNEWQWIDGET/设置MYWINDOW的标题栏的标题MYWINDOWSETWINDOWTITLE“QT图形程序设计训练“/创建一个水平方向布局管理器MYLAYOUTQHBOXLAYOUTMYLAYOUTNEWQHBOXLAYOUT/将标签LABEL添加到布局管理器MYLAYOUT中MYLAYOUTADDWIDGETLABEL/将按钮QUITBUTTON添加到布局管理器MYLAYOUT中MYLAYOUTADDWIDGETQUITBUTTON/在窗口MYWINDOW安装布局管理器MYLAYOUTMYWINDOWSETLAYOUTMYLAYOUT/调用QWIDGET的SHOW方法显示MYWINDOW。MYWINDOWSHOW/将应用程序的控制权传递给QT,程序进入等待模式。RETURNAPPEXEC答程序功能创建一个图形应用程序运行结果8本程序运行后不需要用户输入。INCLUDEUSINGNAMESPACESTDINTMAININTARGC,CHARARGVINTI10,I2123,I3123FLOATF12323COUTUSINGNAMESPACESTDINCLUDE/引用数学函数,比如“平方根”(求直线距离需要)CLASSPOINT/创建POINT点)类PUBLICPOINTDOUBLEX,DOUBLEY/构造函数,参数XY代表点的坐标DOUBLEGETX/成员函数,获取X坐标的值DOUBLEGETY/成员函数,获取Y坐标的值PRIVATEDOUBLEX,Y/数据成员POINTPOINTDOUBLEX,DOUBLEYXXYY/注意大小写DOUBLEPOINTGETXRETURNXDOUBLEPOINTGETYRETURNYCLASSLINE/创建LINE(线条)类POINTSTART/起点(数据成员)/定义数据成员START,它属于POINT类。因此,本类称为组合类,而START称为子对象。POINTEND/终点PUBLICLINEDOUBLEX1,DOUBLEY1,DOUBLEX2,DOUBLEY2STARTX1,Y1,ENDX2,Y2/构造函数LINE,其后DOUBLEX1,DOUBLEY1,DOUBLEX2,DOUBLEY2是对象成员的形参/对象形参之后应该列出本类成员形参,本例无/START后的X1,Y1是对象START的参数/无具体函数,只传递参数VOIDDISPSTART/显示起点的坐标VOIDDISPEND/显示终点的坐标DOUBLEDISTANCE/返回线段长度VOIDLINEDISPSTARTCOUTUSINGNAMESPACESTDINTMAXINTA,INTBRETURNABABINTMAXINTA,INTB,INTCINTTMAXA,BRETURNMAXT,CINTMAININTNUM,A,B,CCOUTNUMIFNUM2COUTABCOUTABCCOUTUSINGNAMESPACESTDCONSTINTSIZE5INTMAININTARRAYSIZECOUTARRAYIINTSCOUTSFORI0IINCLUDE/INCLUDEUSINGNAMESPACESTDDOUBLESQRTDOUBLEXCOUTXIFXUSINGNAMESPACESTDVOIDSWAPINTTAABBTINTMAININTX,YCOUTXYSWAPX,YCOUT/编译预处理命令USINGNAMESPACESTD/使用命名空间STDINTMAINDOUBLELENGTH,WIDTH,AREACOUTLENGTH/CIN输入流,从键盘输入数值存入变量LENGTHCINWIDTH/从键盘输入数值存入变量WIDTHAREALENGTHWIDTH/计算矩形的面积COUTUSINGNAMESPACESTDSTRUCTSTUDENT/定义结构STUDENT,可以理解为一种新的数据类型,类型名就是STUDENT。/以下部分先定义结构中的变量,称为数据成员(包含NUM、NAME和AGE)。INTNUM/学号CHARNAME10/姓名(字符型,包含10个元素,每个元素1个字符)INTAGE/年龄/以下部分定义结构中的函数,称为成员函数(INIT和DISP)。VOIDINIT/用于输入学生的信息COUTNUMCOUTNAMECOUTAGEVOIDDISP/用于显示学生的信息COUTINIT/使用指针方式()访问结构变量的成员函数PSTUDISPRETURN032定义一个图书(BOOK)类,分析该类中的成员至少包括1)数据成员书名、作者、单价和存书数量;2)成员函数显示图书的基本情况;借书后将存书数量减1,并显示当前存书数量;还书后将存书数量加1,并显示当前存书目数量。以下是分别运行了2次的结果书名ABC作者LHW单价2122存书数量20借书请输入L,还书请输入R。L存书数量19书名ABC作者LHW单价2122存书数量20借书请输入L,还书请输入R。R存书数量21答INCLUDEINCLUDEUSINGNAMESPACESTDCLASSBOOK/定义类BOOK/数据成员,包括书名、作者、单价和存书数量STRINGBOOKNAME/书名STRINGAUTHOR/作者FLOATPRICE/单价INTNUMBER/存书数量PUBLIC/成员函数,显示图书的基本情况,借出书籍,归还书籍BOOKSTRINGBN,STRINGAT,FLOATPR,INTNU/构造函数VOIDSHOW/显示图书的基本情况VOIDLENDING_BOOKS/借出书籍VOIDRETURN_BOOKS/归还书籍/构造函数BOOKBOOKSTRINGBN,STRINGAT,FLOATPR,INTNUBOOKNAMEBNAUTHORATPRICEPRNUMBERNU/显示图书的基本情况VOIDBOOKSHOW/显示图书的基本情况COUTLENT_OR_RETURNIFLENT_OR_RETURNLBOOKLENDING_BOOKSELSEBOOKR

温馨提示

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

评论

0/150

提交评论