哈理工C++考试题库之6(可直接的打印的)Word格式.doc
《哈理工C++考试题库之6(可直接的打印的)Word格式.doc》由会员分享,可在线阅读,更多相关《哈理工C++考试题库之6(可直接的打印的)Word格式.doc(13页珍藏版)》请在冰点文库上搜索。
![哈理工C++考试题库之6(可直接的打印的)Word格式.doc](https://file1.bingdoc.com/fileroot1/2023-5/7/c41c636c-d7ab-43c2-9fdd-7cabb58c70fb/c41c636c-d7ab-43c2-9fdd-7cabb58c70fb1.gif)
〖第9题〗『填空』(1分)
在C++程序中使用文件结束后要关闭文件,关闭文件的函数名是【1】.
1).close
〖第10题〗『填空』(1分)
当一个函数无返回值时,函数的类型应定义为【1】
1).void
〖第11题〗『填空』(1分)
在C++程序中使用文件前打开文件,打开文件的函数名是【1】.
1).open
〖第12题〗『填空』(1分)
设x=2.5,a=7,y=4.7,算术表达式x+a%3*(int)(x+y)%2/4的值为【1】.
1).2.5
〖第13题〗『填空』(1分)
执行语句charstr[81]="
abcdef"
;
后,字符串str结束标志存储在str[【1】]
(在括号内填写下标值)中.
1).6
〖第14题〗『填空』(1分)
执行下列语句后,b的十进制值是【1】.
intx=240,y=15,b;
charz='
A'
b=((x&
y)&
(z<
'
a'
));
〖第15题〗『填空』(1分)
cin.get()函数只能接收一个【1】.
1).字符
〖第16题〗『填空』(1分)
〖第17题〗『填空』(1分)
intx=y=z=2;
x=y==z;
则x的值为【1】.
〖第18题〗『填空』(1分)
C++语言程序的三种基本结构是:
顺序结构,选择结构,【1】结构.
1).循环
〖第19题〗『填空』(1分)
设x=2,表达式x>
=60==1的值为【1】.
1).0
〖第20题〗『填空』(1分)
#defineA(n)2*n+1,则表达式A(2+3)的值是【1】
〖第1题〗『判断』(1分)
a=(b=4)+(c=6)是一个合法的赋值表达式.
Y
〖第2题〗『判断』(1分)
数组在使用之前必须先定义.数组定义包括数组的类型、名称、维数及数组中元素的个数.
〖第3题〗『判断』(1分)
对于函数原型:
intfun(inta,intb=300,intc=200,intd=100);
可以使用如下方式调用:
fun(1...
N
〖第4题〗『判断』(1分)
对象成员的表示方法与结构体变量成员的表示方法相同.
〖第5题〗『判断』(1分)一次性输入、输出字符数组时,只写字符数组名.
〖第6题〗『判断』(1分)
fun(4...
〖第7题〗『判断』(1分)
类的作用域范围指的是类体内.
〖第8题〗『判断』(1分)
数组只有一个下标,称为一维数组.
〖第9题〗『判断』(1分)
在c++中实参和形参有3种结合方式,分别为:
值传递、引用传递和地址传递
〖第10题〗『判断』(1分)
定义输入文件流对象fin方法是:
ofstreamfin;
〖第11题〗『判断』(1分)
inta(5),b(3);
a||b结果为1.
〖第12题〗『判断』(1分)
定义一个输出文件流对象,并打开d盘du文件夹下的abc.dat文件方法是:
ofstreamfout;
fout.open...
〖第13题〗『判断』(1分)
若有#defineS(a,b)a*b则语句area=S(3,2);
area的值为6.
〖第14题〗『判断』(1分)
else语句可以单独作为语句使用,它不一定要if配对使用.
〖第15题〗『判断』(1分)
若i=3,则cout<
-i++;
输出的值为-4.
〖第16题〗『判断』(1分)
若有宏定义:
#defineS(a,b)a+b此宏定义是错误的.
〖第17题〗『判断』(1分)
C++中,变量使用时遵循"
先定义,后使用"
的原则.
〖第18题〗『判断』(1分)
若函数fc定义如下:
voidfc(char*a,char*b){while(*a++=*b++);
}函数fc的功能是串复制.
〖第19题〗『判断』(1分)
在程序中,常量是可以不经说明而直接引用,而变量则必须先定义后使用.
〖第20题〗『判断』(1分)
auto是C++语言中的关键字.
〖第1题〗『单项选择』(1分)
函数重载是指().
A:
两个以上的函数取相同的函数名,但形参的个数或类型不同
B:
两个以上的函数取相同的名字和相同的参数个数,但形参的类型可以不同
C:
两个以上的函数名字不同,但形参的个数或类型相同
D:
两个以上的函数名字、参数的个数和类型都相同
A
〖第2题〗『单项选择』(1分)
能将高级语言编写的源程序转换为目标程序的是().
链接程序
解释程序
编译程序
编辑程序
C
〖第3题〗『单项选择』(1分)
编译预处理工作是在()完成的.
编译前
编译时
编译后
连接时
〖第4题〗『单项选择』(1分)
执行下列语句后的结果为().
intx=3,y;
int*px=&
x;
y=*px++;
x=3,y=4
x=3,y=3
x=4,y=4
x=3,y不知
B
〖第5题〗『单项选择』(1分)
假定所有变量均已正确定义,下列程序段运行后x的值是().
k1=1;
k2=2;
k3=3;
x=15;
if(!
k1)x--;
elseif(k2)x=4;
elsex=3;
14
4
15
3
〖第6题〗『单项选择』(1分)
不仅可将C++源程序存在磁盘上,还可将数据按数据类型以什么的
形式存在磁盘上().
内存
缓冲区
文件
寄存器
〖第7题〗『单项选择』(1分)
在C++语言中,要求运算数必须是整型的运算符是().
%
>
〖第8题〗『单项选择』(1分)
语句cout<
a\bre\'
hi\'
y\\\bou\n"
的输出结果是
(说明:
'
\b'
是退格符)().
y\\\bou
y\bou
re'
hi'
you
abre'
〖第9题〗『单项选择』(1分)
设j和k都是int类型,则for循环语句
for(j=0,k=0;
j<
=9&
k!
=876;
j++)cin>
k;
最多执行10次
最多执行9次
是无限循环
循环体一次也不执行
〖第10题〗『单项选择』(1分)
以下能正确定义数组并正确赋初值的语句是().
intN=5,b[N][N];
inta[1][2]={{1},{3}};
intc[2][]={{1,2},{3,4}};
intd[3][2]={{1,2},{3,4}};
D
〖第11题〗『单项选择』(1分)
若有说明:
inti,j=2,*p=&
i;
则能完成i=j赋值功能的语句是().
i=*p;
*p=*&
j;
i=&
i=**p;
〖第12题〗『单项选择』(1分)
判断char型变量cl是否为小写字母的正确表达式是().
=cl<
='
z'
(cl>
=a)&
(cl<
=z)
('
=cl)||('
=cl)
)&
)
〖第13题〗『单项选择』(1分)
以下能对一维数组a进行正确初始化的语句是().
inta[10]=(0,0,0,0,0)
inta[10]={};
inta[]={0};
inta[10]={10*1};
〖第14题〗『单项选择』(1分)
设有说明:
ofstreamoutfile;
则执行语句:
outfile.open("
data1.txt"
);
后,文件:
data1.txt是一个..
用于输入的文本文件
用于输出的文本文件
用于输入的二进制文件
用于输出的二进制文件
〖第15题〗『单项选择』(1分)
以下运算符中,优先级最高的运算符是().
=
*(乘号)
()
〖第16题〗『单项选择』(1分)
以下对一维整型数组a的正确说明是().
inta(10);
intn=10,a[n];
intn;
cin>
n;
inta[n];
#defineSIZE10(换行)inta[SIZE];
〖第17题〗『单项选择』(1分)
若i为整型变量,则以下循环执行次数是().
for(i=2;
i==0;
)cout<
i--;
无限次
0次
1次
2次
〖第18题〗『单项选择』(1分)
已定义ch为字符型变量,以下赋值语句中错误的是().
ch='
\'
ch=62+3;
ch=NULL;
\xaa'
〖第19题〗『单项选择』(1分)
下列定义不正确的是().
#definePI3.141592
#defineS345
intmax(x,y);
intx,y;
{}
staticcharc;
〖第20题〗『单项选择』(1分)
如果某类是从另一个类继承来的,对象释放时析构函数的调用顺序是().
不调用基类的析构函数
先调用基类的析构函数,再调用派生类的析构函数
先调用派生类的析构函数,再调用基类的析构函数
不调用派生类的析构函数
〖第21题〗『单项选择』(1分)
设有intx=11;
则表达式(x++*1/3)的值是().
11
12
〖第22题〗『单项选择』(1分)
下列选项中正确的语句组是().
chars[8];
s={"
Beijing"
};
char*s;
s="
〖第23题〗『单项选择』(1分)
下列字符序列中,可用作C标识符的一组字符序列是().
S.b,sum,average,_above
class,day,lotus_1,2day
#md,&
12x,month,student_n!
D56,r_1_2,name,_st_1
〖第24题〗『单项选择』(1分)
下面判断正确的是().
char*a="
china"
等价于char*a;
*a="
charstr[10]={"
等价于charstr[10];
str[]={"
char*s="
等价于char*s;
s="
charc[4]="
abc"
d[4]="
等价于charc[4]=d[4]="
〖第25题〗『单项选择』(1分)
以下叙述中不正确的是().
预处理命令行都必须以#号开始
在程序中凡是以#号开始的语句行都是预处理命令行
C++程序在执行过程中对预处理命令行进行处理
以下是正确的宏定义#defineIBM_PC
〖第26题〗『单项选择』(1分)
下列程序的输出结果是().
#include<
iostream.h>
voidmain(){inta=7,b=5;
cout<
b/a<
\n"
5
1
不确定值
〖第27题〗『单项选择』(1分)
以下不正确的if语句形式是().
if(x>
y&
x!
=y);
if(x==y)x+=y;
if(x!
=y)cin>
xelsecin>
y;
if(x<
y){x++;
y++;
〖第28题〗『单项选择』(1分)
一个好的程序应该有详尽的注释
在C++程序中,赋值运算符的优先级最低
在C++程序中,j++;
是一条赋值语句
C++程序中的#include和#define均不是C语句
〖第29题〗『单项选择』(1分)
结构体类型的定义允许嵌套是指().
成员是已经或正在定义的结构体型
成员可以重名
结构体型可以派生
定义多个结构体型
〖第30题〗『单项选择』(1分)
全局变量的定义不可能在().
函数内部
函数外面
文件外面
最后一行
〖第1题〗『程序填空』(8分)
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
题目:
以下程序的功能:
将s所指字符串的正序和反序进行连接,
形成一个新串放在t所指的数组中。
例如:
当s串为"
ABCD"
时,则t串的内容应为"
ABCDDCBA"
。
-------------------------------------------------------*/
#include<
#include<
string.h>
voidfun(char*s,char*t)
{
inti,d;
/***********SPACE***********/
d=【?
】;
for(i=0;
i<
d;
【?
】)t[i]=s[i];
i++)t[【?
】]=s[d-1-i];
t[【?
】]='
\0'
chars[100],t[100];
cout<
\nPleaseenterstringS:
cin.getline(s,sizeofs);
fun(s,t);
\nTheresultis:
"
<
t<
1).strlen(s)
2).i++或i=i+1或i+=1或++i
3).d+i或i+d
4).2*d或d*2或i+d或d+i
〖第2题〗『程序填空』(8分)
要求输出结果为:
A,B
{chara,【?
】
a=【?
b='
b'
a=a-32;
b=b-【?
a<
'
b<
1).b;
2).'
或97
3).32
〖第1题〗『程序改错』(8分)
/*------------------------------------------------------
【程序改错】
--------------------------------------------------------
编写程序,求矩阵(3行3列)与5的乘积
例如,输入下面的矩阵:
100200300
400500600
700800900
程序输出:
50010001500
200025003000
350040004500
注意:
不可以增加或删除程序行,也不可以更改程序的结构。
------------------------------------------------------*/
voidfun(intarray[3][3])
/**********FOUND**********/
inti;
/**********FOUND**********/
i<
3;
i++)
for(j=0;
j<
j++)
array[i][j]=array[i][j]/5;
inti,j;
intarray[3][3]={{100,200,300},{400,500,600},{700,800,900}};
for(i=0;
i++)
{for(j=0;
j++)
array[i][j]<
fun(array);
Convertedarray:
1).inti,j;
2).for(i=0;
3).array[i][j]=array[i][j]*5;
〖第1题〗『程序设计』(6分)
/*------------------------------------------------
【程序设计】
--------------------------------------------------
求1至200之间的所有质数,将质数和存入变量sum中。
质数的说明:
“质数是只能被1和其本身整除的数”。
部分源程序给出如下。
请勿改动主函数main和其它
函数中的任何内容,仅在函数的花括号中填入所编
写的若干语句。
------------------------------------------------*/
#include<
math.h>
fstream.h>
voidwwjt(into);
intN,m,sum=0;
N=200;
cout<
1至200之间的所有质数是:
/**********Program**********/
/**********End**********/
wwjt(sum);
voidwwjt(into)
int