版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
山东广播电视高校开放教化《C++语言程序设计》课程综合练习题
一.选择题
1.下面的哪一个保留字不能作为函数的返回类型?(C)
A.voidB.intC.newD.long
2.假定a为一个数组名,则下面的哪一种表示有错误?(了B)
A.a[i]B.*++aC.*aD.*(a+l)
3.在下面的二维数组定义中,哪一个是正确的?(D)
A.inta[5][];B.inta[](10);
C.inta[][];D.inta[][5]={{1,2,3},(4,5});
4.下面的哪一个函数头格式不正确?(B)
A.AA(inta,intb)B.AA(inta=0,intb)
C.AA(inta=0,intb=0)D.AA(inta,intb=0)
5.假定要对类AB定义加号操作符重载成员函数,实现两个AB类对象的加法,并返回相加结果,
则该成员函数的声明语句为(B)。
A.ABoperator+(AB&a,AB&b);B.ABoperator+(AB&a);
C.operator+(ABa);D.AB&operator+();
6.当须要运用ostrstream流类定义-个流对象并联系一个字符串时,应在文件起先运月#include
吩咐,使之包含(A)文件.
A.strstrca.hB.stdlib.hC.iostrcam.hD.fstrcain.h
7.下列变量名中,(A)是合法的。
ACHINABbyte-sizeCdoubleDA+a
8.下列各种函数中,(C)不是类的成员函数。
A构造函数B析构函数C友元函数D拷贝构造函数
9.下列(A)是正确的语句。
A;Ba=17Cx+yDcout«"\n"
10.循环while(inti=0)i-;执行次数是(A)。
A0BIC5D无限
11.设和inlg(inl);是函数f和g的原形,以下将f作为语句调用的是(R)。
Ag(f(3));Bf(g⑶);Cg(f(3)+2);Dp=f(g(3)+l);
12.设int*p2=&x,*pl=a;p2=*b;则a和b的类型分别是(B)。
Aint*和intBint*和int**
Cint和int*Dint*和int*
13.设intx;,则经过(C)后,语句*px=0:可将x值置为0。
Aint*px;Bintconst*px=&x:
Cint*constpx=&x:Dconstint*px=&x;
14.设voidH(inl*m,long&n);inia;longb;则以下调用合法的是(B)。
Afl(a,b);Bfl(&a,b);
Cfl(a,&b);Dfl(&a,&b);
15.以下结构类型可用来构造链表的是(B)。
Astructaa{inta;int*b:}:Bstructbb{inta;bb*b;};
Cstructcc{int*a;ccb:};Dstructdd{int*a:aab;}:
16.运用操作符seiw对数据进行格式输出时,须要包含(C)文件。
Aioslream.hBfstream.hCiomanip.hDstdlib.h
17.类型修饰符unsigned修饰(D)类型是错误的。
AcharBintClongintDfloat
18.下列变量名中,(A)是合法的。
A_varBbye-byeCintD123_cc
19.设inta=3,*p=&a;,则*p的值是(D)。
A变量a的地址值B无意义C变量p的地址值D3
20.设in【m=0;,下列表示引用的方法中,(A)是正确的。
Aint&x=m;Bint&y=10;Cint&z;Dfloat&t=&m
21.循环for(inti=0,x=0;!x&&i<=5;i++);的循环体执行次数是(B)。
A5B6C1D无限
22.磁盘文件操作时,在打开磁盘文件的访问方式中,(C)是以追加数据
方式打开文件的。
AinBoutCappDate
23.类X中,若没有定义构造函数,则默认的构造函数是(A)。
AX(){}BX(X&x){*this=x:}C~X(){}D不存在
24.int*p2=&x,*pl=a:*p2=*b;则变量a和b的类型分别是(D)。
Aint和intBint*和intCint和int*Dint*和int*
25.设p为指针变量,则以下表达式正确的是(B)。
A-p++B-++pC-(p+5)D(p-5)++
26..设voidfl(int&x,char*p);intm;chars[]="c++";以下调用合法的是(C)。
A&s);Bfl(&m,s);Cfl(m,s);Dfl(m,&s);
27.求一个字符串长度的标准函数为(A)。
A.strlen()B.dtrcapl)
C.StrcatOD.strcnipO
28.假定AB为一个类,则执行“ABa(4),b[5],*p⑵:”语句时,自动调用该类构造
函数的次数为(A)。
A.6B.7C.9D.11
29.设inta=3,*p=&a;,贝U*p的值是(D)。
A.变量a的地址值B.无意义
C.变量p的地址值D.3
30.运用操作符selw对数据进行格式输出时,,须要包含(C)文件.
A.iostream.hB.fstream.h
C.iomanip.hD.stdlib.h
二.填空题
1.任C++语言中,用输出限制字符表示饰出一个换行。
2.表达式x=x+l表示成增量表达式为,
3.关系表达式x+y>5的相反表达式为o
4.假定x=5,则执行“a=(x<0?10:20)丁语句后a的值为。
5.假定一个二维数组的定义为“inta[3][6];",则该数组所含元素的个数为.
6.要在屏幕上显示"Hello,world!”应执行语句cou(«。
7.表达式8&3的结果是o
8.若一仝局变量只允许本程序文件中的函数运用,则定义它时应加上修饰符o
9.假定p所指对象的值为36,p+l所指对象的值为49,则本十+p的值为——
10.假定AB为•个类,则执行“ABa[8];”语句时,系统自动调用该类构造函数的次数为------。
11.己知‘A'一'7?的ASCII码为65—90,当执行"charch=14*5+2;cout«ch«endl;"语句
序列后,得到的输出结果为一一。
12.float和double类型的长度分别为--和----。
13.假定一个二维数组的定义为“ima[3][6];",则该数组所含元素的个数为一一,所占存储
空间的字节数为-----
14.执行“typedefintABC[20];”语句把ABC定义为具有20个整型元素的----.
15.假定p所指对象的值为36,p+l所指对象的值为49,则*++p的值为一一
16.假定a是一个二维数组,则的指针访问方式为——。
17.假定要访问一个结构对象x中的由a指针成员所指句的对象,则表示方法为----。
18.对一个类中的数据成员的初始化可以通过构造函数中的一一实现,也可以通过构造函数中
的——实现。
19.当一个类对象离开它的作用域时,系统将自动调用该类的一一。
20.假定AB为一个类,则执行"ABa[8];”语句时,系统自动调用该类构造函数的次数为
答案:1.2.++X3.x+y<=54.20
5.186.'VHcllo,world!'"”7.08.static
9.4910.811.H12.48
13.187214.数组类型15.4916.*,(a[i]+”或*(*(a+i)十j)
17.*(x.a)18.初始化表函数体
19.析构函数20.8
For(inti=O;i<n;i++){
p*=*a;a++;
}
Returnp;
Inta[5]={1,2,34,3);
Cout«LB(a,5)«cndl;
5.#include<iostream.h>
structWorker{
charnamc[15];〃姓名
intage;〃年龄
floatpay;〃工资
};
voidmain(){
Workerx={"wangfong",46,1640};
Workery,*p;
y=x:p=&x;
cou«p->agc+5«,,«p->pay-300«cndl;
1
19.#include<iostream.h>
voidSB(charch){
switch(ch){
case'A':case'a':
cout«"wcll!";break;
case'B':case'b'
cout«"good!”;break;
case'C':case'c':
cout«"pass!break
default:
cotit«"bad!break;
)
cout«cndl;
voidmain(){
chara[61="Abcaf
for(inti=0;a[i];i++)SB(a[i]);
}
21.#includc<iomanip.h>
voidmain(){
inta[8J={3^,7,9,11,13,15,17);
int*p=a;
for(inti=0;i<8;i++){
p+=10;
cout«setw(5)«*p++;
if((i+l}%3==0}cout«cndl;
I
22.#inelude<iomanip,h>
voidLF(inl&x,iniy){
x=x+y;
y=x+y;
cout«"x=',«x«",y="«y«endl;
}
voidmain(){
intx=5,y=8,
cout«'rx="«x«",y=H«y«endl;
LF(x,y);
cout«,'x="«x«",Y="«Y«endl;
}
23.#include<iomanip,h>
voidmain(){
intx=25,y=120;
cout«ndec:"«dec«setw(10)«x«setw(10)«y«endl;
cout«"oct:,'«oct«setw(10)<<x<<setw(10)«y«endl;
cout<<"hex:"«hex«setw(10)«x«setw(IO)«y«dec«endI
)
答案:1.49,56
2.6,5
3.5,6
4.72
5.51,1340
6.well!
good!
pass!
well!
bad!
7.131517
192123
2527
8.x=5,y=8
x=13,y=21
x=I3,y=8
9.dec:25120
Oct:31170
hex:1978
四.写出下列每个函数的功能
I.doubleFI(doublen){
//n为大于等于I的整数
doublex,y=0:
do{
cin»x;
n-;y+=x;
}while(n>0);
returny;
}
2.template<classType>
boolWE(Typea(LTypeb(Lintn){
intc=0;
fbr(inti=0;i<n;i++)
if(a[i]==b[i])c++;
if(c==n)returntrue;returnfalse;
3.voidLK(doubleaf],intn){
doubles=0;
iniI,m=0;
for(i=0;i<n;i++)s+=a[il;
s=s/n;
for(i=0;i<n;i++)if(a[i]>=s)m++;
1
4.#inelude<ios(ream,h>
tempiate<classType>
TypeWD(Typea[l,intn){
Typem=a[0]:
for(inti=l;i<n;i++)
if(a[i]>m)rc=a[i];
returnm
)
5.#include<iomanip,h>
include<fstream,h>
voidJD(char*fname)
//可把以fname所指字符串作为文件标识符的文件称为fname文件,
//假定该文件保存着〜批整数。
{
ifstreamfln(fname,ios::in|ios::nocreate|ios::binary)
intx,s=O,n=O;
while(fin,read((char*)&x,sizeof(x))){
s+=x;n++
)
cout«n«''«s«''«float(s)/n«cndl;
fin.close();
)
6.己知6WaW30,15WbW36,编一程序求出满意不定方程2a卜5b=126的全部整数组解。如
(13,20)就是其中的一组解。
参考答案
L求出从键盘上输入的n个实数之和。
2.模板函数,推断具有n个元素的两个数组a和b中对应元素值是否全部相等,若是则返回真,
否则返回0。
3.统计出数组a的前n个元素中大于等于其平均值的元素个数井作为函数值m返回。
4.模板函数,从数组a的n个元素中求出最大值并返回。
5.从二进制文件中输入全部整数,计算并显示出全部整数的个数、总和与平均值。
6.整个程序正确得10分,否则按下面参考程序中语句后的注释给分。
#inchide<iostream.h>
voidmain()
(
inta,bi//定义变量正确得2分
for(a=6;a<=30;a++)//外循环次数正确得2分
for(b=15;b<=36:b++)//内循环次数正确得2分
if(2xa+5,b==126)coul«,('«a«>,'«b«*)'«endl;
//条件正确得2分,输出语句正确得2分
)
五、编写一个函数,统计出具有n个元素的一维数组中大于等于全部元素平均值的元素个数并返
回它。(12分)
intCount(doublea[],intn);//此为该函数的声明。
参考答案:
答案评分标准见参考程序中的注释。
intCount(doublea[],intn)(
doublem=0;
inti;
for(i=0;i<n;i++)m+=a[i];〃计算出全部元素之和得3分
m=m/n;〃计算出平均值得1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 贝类养殖工岗前工作实操考核试卷含答案
- 2025年家电清洗服务行业竞争报告
- 自来水生产工安全文化模拟考核试卷含答案
- 质量检验流程规范办法
- 2026年中级注册安全工程师之安全生产技术基础考前冲刺练习题(原创题)附答案详解
- 微创手术患者的全面康复护理方案
- 2025广西梧州市城建投资发展集团有限公司招聘1人笔试历年参考题库附带答案详解
- 2025广西乐业宏乐产业发展集团有限公司社会招聘7人笔试历年参考题库附带答案详解
- 2025广东珠海市南水集团有限公司招聘文秘人员1人笔试历年参考题库附带答案详解
- 2025广东东莞市麻涌实业投资集团有限公司招聘法务助理1人笔试历年参考题库附带答案详解
- 2026版HSK-6级原创训练卷(含答案、详细解析及评分标准)
- 天门市2025年湖北天门市事业单位统一公开招聘工作人员154人笔试历年参考题库典型考点附带答案详解
- 管道施工扬尘防控科学措施
- 2025年机械安全操作规范考试试题集和答案
- 人教版六年级数学下册全册教学设计及教学反思
- 河北廊坊安全员考试试题及答案
- 中国人民革命军事博物馆
- 针对老年人的反诈宣传
- 急诊科气道异物急救护理流程
- 中医护理常规技术操作规程完整
- 超长期特别国债项目申报工作指南
评论
0/150
提交评论