77范文网 - 专业文章范例文档资料分享平台

计算机程序设计基础(C++)(景红版)课后全部习题及参考答案(5)

来源:网络收集 时间:2019-04-21 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

( )3. 类的对象是该类的某一特定的实体,即类类型的变量。 ( ( ( (

)4. protected声明的成员,可由该类的成员函数以及由该类派生的类的成员函数使用。 )5. 析构函数不能重载。

)6. 程序只可以通过类的公有成员访问该类的私有成员。 )7. 对象是类的模板,类是对象的实例化。

( )8. 类是一种既包含数据又包含函数的数据类型。 ( )9. 类的析构函数的作用是类的初始化。 ( )10. 基类是由派生类派生而来的。 ( )11. 类的构造函数的作用是删除对象。

( )12. 公有继承时基类中的private成员在派生类中仍是private的。 ( )13. 私有继承时基类中的public成员在派生类中是private的。 ( )14. 构造函数不能重载。

( )15. 一个类中可以有多个同名的成员函数。

( )16. 一个派生类不能作为基类被别的派生类继承。

( )17. 析构函数和构造函数都是成员函数。

( )18 在声明一个对象时,C++编译器隐含地调用其构造函数。当对象退出其说明的作用域时,析构函数被隐含地调用。

( )19. 析构函数和构造函数都可以带参数 。

( )20 当对象退出其说明的作用域时,析构函数被隐含地调用。 二、单项选择题

1. 下面描述中,不正确的是( )。

(A) 在关键字private后面声明的成员,只允许本类中的函数访问,而类外的任何函数都

不能访问 (B) 在类的外部只能访问类的公有成员

(C) 面向对象程序设计方法具有四个基本特征:抽象、封装、继承、多态性 (D) 函数的重载体现了面向对象程序设计的继承性

2. 类Time的构造函数名是( )。

(A) class (B) public (C) private (D) Time 3. 类创建的对象称为( )。

(A) 属性 (B) 类的实例 (C) 基类 (D) 派生类 4. 下面描述中,不正确的是( )。

(A) 构造函数定义了创建对象的方法,提供了初始化对象的一种简便手段。 (B) 析构函数完成对象被删除前的一些清理工作。

(C) 如果程序中未声明构造函数,则系统自动产生出一个缺省形式的构造函数。

(D) 析构函数允许重载,但析构函数不得返回任何值,即使关键字void也不允许有。 5. 以下哪项创建了名为dog的Animal对象( )。

(A) Animal “dog”; (B) Animal dog; (C) dog “Animal”; (D) dog Animal;

6. 以下哪项表明displayBreed()函数是Animal类的成员函数( )。 (A) nimal:: displayBreed() (B) Animal. displayBreed() (C) displayBreed()::Animal (D) displayBreed()&&Animal 7. 类Animal的构造函数名是( )。

(A) Animal (B) AnimalConstructor (C) ConstAnimal (D) 以上任何一项都可作为构造函数名

8. 为了使类中的某个成员不能被类的对象通过成员选择运算符访问,则不能把该成员的访问权限定义为( )。 (A) public (B) protected (C) private (D) static 9. 类具有哪四个基本特征( )。 (A) 抽象 隐藏 继承 多态 (B) 抽象 封装 继承 多态 (C) 抽象 隐藏 继承 封装 (D) 抽象 封装 封装 多态 10. 类的构造函数的作用是( )。 (A) 一般成员函数 象

11. 由类中创建的对象称为( )。 (A) 属性 (B) 类的实例 12. 类的析构函数的作用是( )。 象

(C) 基类

(D) 派生类

(D) 删除对

(B) 类的初始化 (C) 对象的初始化

(D) 删除对

(A) 一般成员函数 (B) 类的初始化 (C) 对象的初始化

第8章 文件的应用

一、判断题

( )1. 一般通过析构函数负责打开文件,构造函数负责关闭文件。

( )2. 打开文件就是把流与文件相连接,关闭文件就是切断这一连接。

( )3. 文件的I/O由ifstream、ofstream、fstream 3个类提供。ifstream是istream的派生类。

( )4. 文件的打开方式分为创建文件流对象模式和使用open函数模式。

( )5. Visual c++中,可以创建三种不同类型的数据文件:顺序文件、随机文件、二进制

文件。

( )6. 文件都是以顺序形式存储和查找的。

( )7. 要创建文件对象,必须在程序中包含名为fstream的头文件。

( )8. 将现有输出文件的末尾增加记录,需要在open()函数中使用ios::out模式。 ( )9. 对文件操作必须先关闭文件,然后再操作文件。

( )10. 当结束一个文件的操作后,要及时将该文件关闭,以防止数据遗漏。 ( )11. 如果记录指针不在文件的末尾,eof()函数返回值是true。

( )12. close()函数不需要文件名,计算机自动地确定并关闭与文件对象相关的文件。 ( )13. inFile.ignore(1); 作用是丢去一个字符或第一次遇到输入文件结束标记后,停止读取字符。

( )14. getline(inFile,state); 作用是从文件中读取字符串数据(遇空格符结束)存于state

变量中。

二、单项选择题

1. 在对磁盘文件进行操作时,以(

)方式打开的文件,可实现将数据添加在文件尾部。

(A) ios::in (B) ios::app (C) ios::out (D) ios:binary 2. 下面( )以读的模式打开文件 (A) ios:in (B) ios:out (C) ios:app (D) ios:read 3. 已知文本文件的内容是字符串“Madam I?m Adam”,下列语句序列中,( 不是 “dam”。

(A) char str[30];ifile.seekg(11,ios::beg); ifile.getline(str,30);cout<

ifile.get(str,30);cout<

ifile.getline(str,30);cout<

(D) char str[30];ifile.seekg(11,ios::beg);

ifile.get(str,30);cout<

4. 下列关于write函数的描述中,( )是正确的。

(A) 可以写入任意数据类型的数据 (B) 只能写二进制文件

(C) 只能写字符串 (D) 可以使用“(char *)+数组名”的方式数组 5. 在对磁盘文件进行操作时,以( )模式打开的文件,可实现将数据添加在文件尾部。 (A)ios::in (B)ios::app (C)ios::out (D)ios:binary

6. 在对磁盘文件进行操作时,以( )方式打开的文件,可实现创建一个可以写入的、新的空文件;如果该文件已经存在,则先删除以前的内容,再写入新的数据。 (A)ios::in (B)ios::app (C)ios::out (D)ios:binary 7. 以输出模式打开文件时,( )模式是默认输出模式。

(A)ios::in (B)ios::app (C)ios::out (D)ios:binary 8.下面( )是以读的模式打开文件。

(A)ios::in (B)ios::app (C)ios::out (D)ios::read 9. 以下判断文件a1.dat是否打开成功的正确语句是( ) (A)if(outFile.is_open(a1.dat)) (B)if(outFile. open()) (C)if(outFile.is_open()) (D)if(outFile. open(a1.dat)) 10. 以下将文件a1.dat关闭的正确语句是( )

(A)inFile.close(a1.dat); (B)a1.dat_ inFile.close(); (C)inFile_close(a1.dat); (D)inFile.close();

11. inFile.eof() 的值为真表示( )

(A)文件已读完 (B)文件为空 (C)文件未读完 (D)文件打开成功 12. 已知inFile为输入文件对象,以下格式正确的是( ): (A)close. inFile (); (B)inFile.close(); (C)inFile-close(); (D)close(inFile);

13. 变量outfile与文件对象相关联时,以下语句( )能将s1和s2变量的内容写入test.dat

文件。 (A)test.dat<>s1>>?#?>>s2>>endl; 14.以下( )语句能将city变量写入名为date1.dat的输出文件。

(A)date1.dat <>city>>endl;

)输出的

三、阅读程序题 1:#include #include using namespace std; clase Cdisp

{ int x,y; public:

Cdisp(int i=0,int j=0) { x=i; y=j; }

void disp( )

{ cout<<”x=”<

void main( )

{ Cdisp obj1(12,18),obj2(3,20),obj; fstream iofile;

iofile.open(“c:\\\\temp\\\\data.txt”,ios::out); iofile.close( );

iofile.open(“c:\\\\temp\\\\data.txt”,ios::out|ios::out); iofile.write((char *)&obj1,sizeof(Cdisp)); iofile.write((char *)&obj2,sizeof(Cdisp)); iofile.seekp(0,ios::beg);

iofile.read((char *)&obj,sizeof(Cdisp)); obj.disp();

iofile.read((char *)&obj1,sizeof(Cdisp)); obj1.disp();

iofile.read((char *)&obj2,sizeof(Cdisp)); obj2.disp(); }

当执行以上程序时,输出结果是:( ) 四、程序改错题

1、功能:从键盘读取成绩,并把该成绩保存在“score1.dat”的数据文件中。 score1.dat数据文件的格式如下:

学号 高数 外语 C++ 1 77 69 96 2 87 87 65 3 76 95 87 4 56 79 94

#include #include using namespace std; void main()

{ int num[4],m[4],e [4],c[4]; int i;

ifstream outFile;

outFile.open(\cout<<\

for(i=0;i<4;i++) cin>>num[i]>>m[i]>>e[i]>>c[i];

if(File.is_open( ))

{ outFile<<\学号\高数\外语\

for(i=0;i<4;i++)

cout<

close.outFile ( );

}

else

cout<<\

}

2、功能:文件Solution1.dat中存放的是数字1到25的平方,现读取该文件中存储的数字求总和并显示在屏幕上。

Solution1.dat数据文件的格式如下:

1 4 9 … 625

#include #include using namespace std; void main()

{ ofstream inFile;

inFile.open(\int number = 0; int sum = 0; if(inFile.is_open(Solution1.da)) { inFile >> number;

while (inFile.eof())

{ sum = sum + number; cin >> number; } close();

cout << \}

else cout << \

}

\

\ \

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库计算机程序设计基础(C++)(景红版)课后全部习题及参考答案(5)在线全文阅读。

计算机程序设计基础(C++)(景红版)课后全部习题及参考答案(5).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/613127.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: