一、单项选择题(总分 21
1. (分值:1.0 分)有如下程序段:</p> int i=1;</p> while(1)</p> { i++;</p>
if (i==10) break;</p> if (i%3==0) cout<<"*";</p> }</p>执行这个程序段输出字
*的个数是( )
A: 1
B: 2
C: 3
D: 4
序号:31 难度:1 考查点:程序控制结构
2. (分值:1.0 分)要建立文件流并打开当前目录下的文件filedat 用于输入,下列语句
中错误的是
A: ifstream fin=ifstream.open ("file.dat");
B: ifstream *fin=new ifstream ("file.dat");
C: ifstream fin; fin.open ("file.dat");
D: ifstream *fin=new ifstream(); fin->open ("file.dat");
序号:72 难度:多态性与虚函数1 考查点:输入输出流
3. (分值:1.0 分)有下列程序:
#include<iostream.h>
void main( )
{
int i,k,a[10],p[3];
k=5;
for(i=0;i<9;i++) a[i]=i;
for(i=0;i<3;i++) p[i]=a[i*(i+1)];
for(i=0;i<3;i++) k+=p[i]*2;
cout<<k;
}
其输出结果是( )。
A: 20
B: 21
C: 22
D: 23
序号:100 难度:1 考查点:数组
4. (分值:1.0 分)下面4 个选项中,( )是用来声明虚函数的。
A: virtual
B: public
C: using
D: false
序号:141 难度:1 考查点:多态性与虚函数
5. (分值:1.0 分)存放多个字符串,用________比较适合。
A: 二维字符数组
B: 一维字符数组
C: 自定义结构体
D: 自定义共用体
序号:165 难度:1 考查点:自定义数据类型
6. (分值:1.0 分)使用sin(x),必须包括的头文件为_______
A: iostream.h
B: math.h
C: stdlib.h
D: string.h
序号:178 难度:1 考查点:函数
7. (分值:1.0 分)若有:int a, *p=&a; 则下面哪个表达式为真( )
A: *p==&a
B: p==*a
C: a==*&a
D: &p==&a
序号:208 难度:1 考查点:指针
8. (分值:1.0 分)下列说法不正确的是:____________
A: for,while do-while 循环体中的语句可以是空语句。
B: 使用 while do-while 循环时,循环变量初始化的操作应在循环语句之前完成。
C: for do-while 循环都是先执行循环体语句,后判断循环条件表达式。
D: while 循环是先判断循环条件表达式,后执行循环体语句。
序号:213 难度:1 考查点:程序控制结构
9. (分值:1.0 分)设有类型说明:</p>enum color{red, yellow=3, white, black};</p>则执行
语句 cout<<white<<"\n"; 后输出的结果是( )
A: 4
B: 3
C: 2
D: 1
序号:225 难度:1 考查点:自定义数据类型
10. (分值:1.0 分)设a b 为整型变量,执行语句 b=(a=2+3,a*4),a+5; a b 的值为( )
</p>
A: 510
B: 2025
C: 525
D: 520
序号:237 难度:1 考查点:C++基础知识
11. (分值:1.0 分) 类的概念是( )
A: 对象的抽象。
B: 同一类记录的集合。
C: 同一类数据的集合。
D: 所有对象的集合。
序号:240 难度:1 考查点:类与对象
12. (分值:1.0 分)下列关于输入流类成员函数getline( )的描述中,错误的是( )。
A: 该函数是用来读取键盘输入的字符串的。
B: 该函数读取的字符串长度是受限制的。
C: 该函数读取字符串时,遇到终止符便停止。
D: 该函数读取字符串时,可以包含空格。
序号:249 难度:1 考查点:输入输出流
13. (分值:1.0 分)变量s 的定义为char *s=R Hello world!R ,要使变量p指向s 所指向
的字符串,则应选取( )。
A: char *p=s;
B: char *p=&s;
C: char *p;p=*s;
D: char *p; p=&s;
序号:280 难度:1 考查点:指针
14. (分值:1.0 分)vc++中常数020 表示十进制数__________
A: 20
B: 32
C: 16
D: 24
序号:339 难度:1 考查点:C++基础知识
15. (分值:1.0 分)下面关于基类与派生类的访问控制规则的叙述,错误的是
A: 不管是何种派生,基类的private 成员都不能被其派生类访问。
B: 在派生类中访问基类的private 成员可以通过基类的public protected 成员函数访问。
C: 当通过private 继承时,基类中的protected 成员数据不能被派生类的成员函数访问。
D: 当通过public 继承时,基类中的protected 成员数据可以被派生类的成员函数访问。
序号:382 难度:1 考查点:继承与派生
16. (分值:1.0 分)以下哪个基类中的成员函数表示纯虚函数________
A: virtual void tt()=0;
B: void tt(int)=0;
C: virtual void tt(int);
D: virtual void tt(int){ };
序号:385 难度:1 考查点:多态性与虚函数
17. (分值:1.0 分)需要一种逻辑功能一样的函数,而编制这些函数的程序文本完全一样,
区别只是数据类型不同。对于这种函数,下面不能用来实现这一功能的选项是_______
A: 宏定义(宏函数)
B: 为各种类型都重载这一函数
C: 模板
D: 友元函数
序号:423 难度:1 考查点:模板
18. (分值:1.0 分)一个函数为 void f(int, char ch='a'),另一个函数为 void f( int ),则它们
( )
A: 不能在同一程序中定义
B: 可以在同一程序中定义并可重载
C: 可以在同一程序中定义,但不可以重载
D: 其他三种说法均不正确
序号:428 难度:1 考查点:重载
19. (分值:1.0 分) 以下程序段输出的结果是( )。char c=\x41;</p>cout<<(int)c;</p>
A: A
B: 41
C: 语法错
D: 65
序号:485 难度:1 考查点:C++基础知识
20. (分值:1.0 分)设MClass 是一个类,有以下定义:MClass dd,*pp=ⅆ则指针变量pp
可以通过( )访问对象dd 的成员。</p>
A:
B: .
C: &
D: ->
序号:667 难度:1 考查点:类与对象
21. (分值:1.0 分)有类定义如下:</p>class X</p>{</p> int a;</p>public:</p> X( int
x=0 ){ a=x; }</p>};</p>class Y : public X</p>{</p> int b;</p>public:</p> Y( int x=0,
int y=0 ) : X(y) { b=x; }</p>};</p>下列定义对象的语句组中出现语法错误的是( )</p>
A: X *pa=new Y(1,2);
B: X a1=Y(1,3);
C: Y b1(2,3); X &a3=b1;
D: X a4(10); Y b2=a4;
序号:669 难度:1 考查点:继承与派生
二、填空题(总分 44
1.(分值:2.0)在面向过程的程序设计中,程序功能模块由函数实现;在面向对象的程序设
计中,程序模块由实现。
序号:101 难度:1 考查点:类与对象
2.(分值:6.0)输入一个正整数,求该数的阶乘。
#include <iostream>
using namespace std;
int main()
{
int i,n;
long int fact=1;
cout<<"请输入一个正整数:";
cin>>n;
for(i=2;i<=n;i++) fact*=i; cout<<n<<"!="<<fact<<endl; return 0;
}
序号:135 难度:1 考查点:程序控制结构
3.(分值:6.0)显示输出3100 之间的所有素数。
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
cout<<"3100 之间的素数是:"<<endl;
for(int m=3;m<100;m+=2)
{
int k=int(sqrt(m));
for(int i=2;i<=k;i++)
if(m%i==0)break ;
if(k<i i>k ) cout<<m<<R
R ; }
cout<<endl; return 0;
}
序号:140 难度:2 考查点:程序控制结构
4.(分值:2.0)设int a=15,b=26;cout <<(a,b);的输出结果是:26
序号:214 难度:2 考查点:程序控制结构
5.(分值:6.0)出矩阵A<SUB>3</SUB><SUB> </SUB>中第一个最大元素以及它的行
号和列号(0 开始计算)
#define M 3
#define N 4
#include <iostream>
using namespace std;
int main( )
{int i,j,row,colum,max;
int a[M][N];