版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
答案来源:《C++程序设计》模拟题一、单项选择题下列为合法的c++常量的是(
).'105''Be'"x-y"07ff[答案]:C
2.表达式18/4*sqrt(4.0)/8值的数据类型为(
).intfloatdouble不确定[答案]:C
3.以下语句中无法正确赋值的是(
).charb[10]={'H','e','l','l','o','!'}charb[10];b="Hello!"char*b;b="Hello!"charb[10]="Hello!"[答案]:B
4.以下程序的输出结果是(
).#include<iostream.h>voidmain(){inti,j,x=0;
for(i=0;i<2;i++)
{x++;
for(j=0;j<3;j++)
{if(j%2)
continue;
x++;
}
x++;
}
cout<<x<<endl;}48612[答案]:B
5.设有定义:unsignedop=2,则与语句op<<=1等价的语句为(
).op*=2op/=2op*=4op/=4[答案]:A
6.c++语言源程序文件的扩展名是(
)."cpp""obj""exe""c++"[答案]:A
7.c++语言程序中可以对程序进行注释,注释部分必须用符合(
)括起来."{"和"}""["和"]""(*"和"*)""/*"和"*/"[答案]
8.已知字符'b'的ascII码为98,执行printf("%d,%c",'b','b'+1);语句后输出为(
).98,b语句不合法98,9998,c[答案]
9.以下各项中,为非法常量数值的是(
).11180xabcd5L[答案]:B
10.下列程序运行后,输出结果是(
).#include<iostream.h>voidmain(){
inti=0,j=0,a=6;if((++i>0)||(++j>0))a++;cout<<"i="<<i<<",j="<<j<<",a="<<a<<endl;}i=0,j=0,a=6i=1,j=1,a=7i=1,j=0,a=7i=0,j=1,a=7[答案]:C
11.表达式-1?(0?0:-1)10?10:1)的值为(
).1010-1[答案]
12.以下关于函数的叙述正确的是(
).函数中必须要有return语句函数中可以有多个return语句,但只有一个被执行return语句中必须有一个表达式函数中定义的变量不能与其它函数中的变量同名[答案]:B
13.若有以下的定义和语句,则值为5的表达式是(
).inta[]={1,2,3,4,5,6,7,8,9,10};a[5]a[a[4]]a[a[3]]a[a[5]][答案]:C
14.设有以下结构体定义,则以下能输出字符串"grape"的语句为(
).struct
ww{intno;
char
name[10];}cc[4]={1,"apple",2,"banana",3,"grape",4,"orange"};cout<<cc[2]&name[0]<<endlcout<<cc[2]name[0]<<endlcout<<cc[2]&name<<endlcout<<cc[2]name<<endl[答案]
15.下面程序段的输出结果是(
).charp1[10]="abc",p2[]="ABC",str[50]="xyz";strcpy(str+2,strcat(p1,p2));cout<<str<<endl;xyabcABCZabcABCYzabcABCxyzabcABC[答案]:A
16.以下选项中不正确的实型常量是(
).2.30.231E3.62.3[答案]:C
17.若a,b都是int类型变量,(
)不是正确的赋值语句.a=b=60a=30a=1,3b=0[答案]:C
18.下列各语句定义了数组,(
)是不正确的.inta[1][3]intx[2][2]={1,2,3,4}intx[2][]={1,2,4,6}intm[][3]={1,2,3,4,5,6}[答案]:C
19.a,b均为double型变量,且a=5.5,b=2.5,则(int)a+b/b的值是(
).6.565.56[答案]
20.以下各标识符中,正确的标识符是(
).a-b123__123signed[答案]:C
21.以下不能用作标识符的是(
)._26coutcaseDouble[答案]:C
22.满足x为奇数时值为真,x为偶数时值为假的表达式是(
).!(x%2==1)x%2==0x%2!(x%2)[答案]:C
23.在定义int*p[3];中,标识符p(
).是一个指向整型变量的指针是一个指针数组,包含3个指向整型数据的指针变量是一个函数指针,可以指向返回值类型为int型的函数是一个指针变量,它可以指向一个具有三个元素的一维数组[答案]:B
24.以下程序的输出结果是(
).char
ss[16]="test\0abc\n\t";cout<<strlen(ss)<<’,’<<sizeof(ss)<<endl;4,1611,1611,114,11[答案]:A
25.以下程序段的输出结果为(
).unionu{char*name;intage;intincome;}s;="WangLing";s.age=28;s.income=1000;
cout<<s.age<<endl;2810000WangLing[答案]:B
26.在c++语言程序中,用关键字(
)定义无符号型变量.unsignedfloatdoublechar[答案]:A
27.以下语句不正确的语句是(
).if(x>y)1+2if(x=y)&&(x!=0)x+=yif(x!=y)cin>>x;elsecin>>yif(x<y){x++;y++;}[答案]:B
28.若变量已正确定义且k的值是4,计算表达式(j=k--)后,(
)是正确的.j=4,k=4j=4,k=3j=3,k=4j=3,k=3[答案]:B
29.以下叙述中不正确的是(
).在函数中,通过return语句传回函数值在函数中,可以有多条return语句在c++中,主函数main后的一对圆括号中可以带行参在c++中,调用函数,必须在一条独立的语句中完成[答案]:D
30.x为整型变量,执行语句x=(x=5,x*4,x+5)>10?20x+5);后,x的值为(
).10202530[答案]:A
二、问答题标识符的命名规则是什么?[答案]:由字母,数字,下划线组成(2分),第一个字符只能是字母或下划线(2分).
在C++语言中,重载有哪几种方式?[答案]:函数重载和运算符重载
说明在派生类定义中,基类前public,private,protected是什么意思?[答案]:不同的继承方式,导致不同访问属性的基类成员在派生类中的访问属性也有所不同public公有继承,使得基类公有和保护成员的访问属性在派生类中不变,而基类私有成员不可访问.(2)private私有继承,使得基类公有和保护成员都以私有成员身份出现在派生类中,而基类私有成员不可访问.(3)protected保护继承,基类公有和保护成员都以保护成员身份出现在派生类中,而基类私有成员不可访问.
4.#include<iostream.h>voidmain(){
intn=3,r(1);
do{
r*=n;
n--;
}while(n>=1);
cout<<r<<endl;}[答案]:6
5.#include<iostream.h>classCPoint{public:
CPoint(intxx=0,intyy=0){X=xx;Y=yy;countP++;}
~CPoint(){
countP--;}
voidGetC(){cout<<"countP="<<countP<<endl;}private:intX,Y;
staticintcountP;};intCPoint::countP=0;voidmain(){CPointA(4,5),B;
A.GetC();
{CPointC(1,2);C.GetC();
}
B.GetC();}[答案]:countP=2countP=3countP=2
6.#include<iostream.h>voidmain(){
intn,r(1);
for(n=4;n>=1;n--)
r*=n;
cout<<r<<endl;}[答案]:24
7.#include<iostream.h>template<typenameT,typenameP>classCPlus{public:
CPlus(Tm1,Pn1){m=m1;n=n1;}Pplus();Tm;
Pn;};template<typenameT,typenameP>CPlus<T,P>::plus(){Ps;
s=(P)(m+n);
return(s);}voidmain(){CPlus<double,int>a(12.345,6);
cout<<"a="<<a.plus()<<endl;CPlus<int,float>b(14,2.56f);
cout<<"b="<<b.plus()<<endl;}[答案]:a=18
b=16.568.如果下面程序输入5,输出是什么?#include<iostream.h>voidmain(){
intn,r(1);
cin>>n;
while(n>=1)
{
r*=n;
n--;
}
cout<<r<<endl;}[答案]:120
9.class类类型中,拷贝构造函数应具有哪些特征?[答案]:拷贝构造函数的特点如下:(1)该函数名与类名相同,因为它也是一种构造函数,并且该函数也不被指定返回类型;(1分)(2)该函数只有一个参数,并且是对同类的某个对象的引用;(1分)(3)每个类都必须有一个拷贝构造函数;(1分)(4)在新建对象时,对对象进行初始化时调用,对象之间赋值不调用.(1分)10.C++语言标准数据类型(即已有的)有哪些?[答案]:char,int,short,long,float,double,bool,void.
11.类定义体中,有些函数之前有关键字virtual的意义是什么?[答案]:该函数为虚拟函数,指定为动态绑定方式.运行时该函数才与调用函数进行绑定.
12.#include<iostream.h>intchange(intx,int&y,int&z,int*dp){
z=x--+--y;
*dp=x-y--;
return(x+y);}voidmain(){
inta=4,b=4,c=4,d=4;
a=change(a,b,c,&d);
cout<<a<<','<<b<<','<<c<<','<<d<<endl;}
[答案]:5,2,7,0
13.#include<iostream.h>voidmain(){
inti,n=6,r(1);
for(i=1;i<=n;i++)
r*=i;
cout<<r<<endl;}[答案]:720
14.#include<iostream.h>intchange(intx,int&y,int&z,int*dp){
z=x--+--y;
*dp=x-y--;
return(x+y);}voidmain(){
inta=8,b=8,c=8,d=8;
a=change(a,b,c,&d);
cout<<a<<','<<b<<','<<c<<','<<d<<endl;}
[答案]:13,6,15,0
15.#include<iostream.h>classCPoint{
private:intX,Y;
public:
CPoint(inti,intj){X=i;Y=j;}
virtualintArea(){
return0;}};classCRectangle:publicCPoint{
private:intW,H;
public:
CRectangle(inti,intj,intk,intl):CPoint(i,j){W=k;
H=l;}
intArea(){return
W*H;}};voidfun(CPoint&s){cout<<"Area="<<s.Area()<<endl;
}voidmain()
{CRectangler(2,3,6,8);
fun(r);
}[答案]:Area=48
16.#include<iostream.h>intfun(intn){
intr;
if(n==1||n==2)
r=1;
else
r=fun(n-1)+fun(n-2);
return
r;}voidmain(){
cout<<fun(6)<<endl;
}[答案]:8
17.什么叫类?什么叫对象?[答案]:类是封装了数据和方法的一种抽象数据类型(2分).对象是类的一个实例(2分).18.在C++语言中,请说明结构体和联合体的异同点.[答案]:结构体数据类型的变量可以同时存储int,long,char和double型等已有数据类型的数据,这些数据使用不同的存储空间,而联合体虽然表面上可以存储int,long,char或double等已有数据类型的数据,但它们共享其占用空间最多的成员所分配的存储空间,对某个成员赋值将影响其它成员的数值.
19.函数之间的参数传递的形式有哪几种?[答案]:传值传递方式,地址传递方式,引用方式.
20.#include<iostream.h>classB{public:
B(inti){
cout<<"constructingB"<<i<<endl;
}};classC:publicB{public:
C(inta,intb,intc):B(a),memberB(b)
{cout<<"constructingC"<<c<<endl;}private:
BmemberB;};voidmain(){Cobj(1,2,3);
}[答案]:constructingB1constructingB2constructingC321.#include<iostream.h>classCPoint{
private:intX,Y;
public:
CPoint(inti,intj){X=i;Y=j;}
virtualintArea(){
return0;}};classCTriangle:publicCPoint{
private:intW,H;
public:
CTriangle(inti,intj,intk,intl):CPoint(i,j){W=k;
H=l;}
intArea(){return
W*H/2;}};voidfun(CPoint&s){cout<<"Area="<<s.Area()<<endl;
}voidmain()
{CTriangler(9,8,7,6);
fun(r);
}[答案]:Area=21
22.#include<iostream.h>classmyclass{private:
inta,b;
staticints;
public:
myclass(intx,inty){a=x;
b=y;s++;
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026中国科学院生态环境研究中心“海外优青”招聘备考题库(北京)及答案详解一套
- 四川省青神中学022-2023学年高一上学期期末质量测试英语试题(原卷版)
- 移动互联网AI应用
- 2026山西省气象局招聘应届高校毕业生12人备考题库(第2号)附答案详解(模拟题)
- 2026广西崇左凭祥市应急管理局编外工作人员招聘2人备考题库及答案详解(基础+提升)
- 2026中国科学院广州地球化学研究所科研助理招聘2人备考题库(应用矿物学学科组)附参考答案详解(基础题)
- 2026广西百色市平果市气象局城镇公益性岗位人员招聘1人备考题库附参考答案详解(考试直接用)
- 2026广西崇左宁明县那堪镇卫生院招聘1人备考题库附答案详解(基础题)
- 2026湖南郴州市第一人民医院招聘58人备考题库带答案详解(研优卷)
- 2026江苏苏州市常熟市莫城街道(服装城)国有(集体)公司招聘13人备考题库含答案详解(培优)
- 做账实操-建筑施工行业会计处理分录
- 缝沙包劳动与技能课件
- GB/T 37507-2025项目、项目群和项目组合管理项目管理指南
- 数据安全法课件
- DBJ33T 1318-2024 建筑结构抗震性能化设计标准
- 体检中心前台接待流程
- 机电安装施工专项方案
- 物业管理安全生产风险分级制度
- DB35T 1036-2023 10kV及以下电力用户业扩工程技术规范
- 青岛版数学四年级下册期中考试试卷含答案
- 中国移动自智网络白皮书(2024) 强化自智网络价值引领加速迈进L4级新阶段
评论
0/150
提交评论