(2013版)C++程序设计教学规范(5)

2019-05-27 17:30

姓名 班级 学号 文件名:班级号_学号_姓名_题号.cpp(多文件应压缩为rar文件)

实验9 文件(6学时) 实验目的

(1) 掌握流的概念

(2) 掌握文本文件和二进制文件的使用方法 实验内容

1、建立一个文本文件“textfile.txt”(内容由读者选定),然后显示该文件,并且统计该文件的行数和字符数。 思考并验证:

(1) 程序中应该定义输入流还是输出流,为什么?

(2) 您如何理解C++中流的概念

2、编写程序上机完成如下工作:

1建立一个存放图书信息的二进制文件“bookf.dat”,在该文件中,使每个记录包括图○

书编号、图书名、出版社、作者和价格。 2 浏览文件“bookkf.dat”○。

3用键盘输入某本图书的编号,在文件“bookf.dat”中查找该图书名、出版社、作者和○价格。

4 在文件“bookf.dat”的末尾添加新记录。 ○

5按给定编号删除相应的记录。 ○

要求分别编写函数来完成上述各项工作,并在main函数中使用菜单来选择某项功能。 思考并验证:

(1) 你在删除记录时考虑了哪些问题,是如何解决的?

第 21 页

(2) 若把新记录添加到文件的开头,你如何来实现,写出实现步骤?

(3) 浅谈编写该程序的体会。(您认为该程序的功能有何不足?了解数据库的概念吗?)

3、修改实验12的第(2)题,增加以下功能:

1 当新建一个学生、教师或助教对象时,可以键盘输入数据并且将其保存在文件中; ○

2 当删除对象时,对文件的记录添加删除标记; ○

3 当执行主函数时,把文件的数据导入一个异质链表中,以便于快速查找和修改。 ○

第 22 页

姓名 班级 学号 文件名:班级号_学号_姓名_题号.cpp(多文件应压缩为rar文件)

实验10 黑白子交换(选做) 实验内容:

编程实现以下的棋子移动过程: 有三个白子和三个黑子如下图布置: ○ ○ ○ . ● ● ● 游戏的目的是用最少的步数将上图中白子和黑子的位置进行交换: ● ● ● . ○ ○ ○ 游戏的规则是:(1)一次只能移动一个棋子; (2)棋子可以向空格中移动,也可以跳过一个对方的棋子进入空格,但不能向后跳,也不能跳过两个子。请用计算机实现上述游戏。 问题分析与算法设计指导

计算机解决这类问题的关键是要找出问题的规律,或者说是要制定一套计算机行动的规则。分析本题,先用人来解决问题,可总结出以下规则: (1) 黑子向左跳过白子落入空格,转(5) (2) 白子向右跳过黑子落入空格,转(5)

(3) 黑子向左移动一格落入空格(但不应产生棋子阻塞现象),转(5) (4) 白子向右移动一格落入空格(但不应产生棋子阻塞现萌),转(5) (5) 判断游戏是否结束,若没有结束,则转(1)继续。

所谓的“阻塞”现象就是:在移动棋子的过程中,两个尚未到位的同色棋子连接在一起,使棋盘中的其它棋子无法继续移动。例如按下列方法移动棋子: 原始布局 ○ 第一步: ○ ○ . ○ ● ● ● ○ ○ . ● ● ● 第二步:△ ○ ○ ● ○ . ● ● 第三步: ○

第 23 页 共 28 页

○ ● . ○ ● ● 第四步: 两个●连在一起产生阻塞 ○ ○ ● ● ○ . ● 或第四步:两个白○连在一起产生阻塞 ○ . ● ○ ○ ● ● 产生阻塞的现象的原因是在第2步(△状态)时,棋子○不能向右移动,只能将●向左移动。总结产生阻塞的原因,当棋盘出现“黑、白、空、黑”或“白、空、黑、白”状态时,不能向左或向右移动中间的棋子,只移动两边的棋子。

按照上述规则移动棋子,可以保证在移动棋子的过程中,不会出现棋子无法移动的现象,且可以用最少的步数完成白子和黑子的位置交换。

第 24 页 共 28 页

附录: 上机操作指导

一、熟悉Visual C++6.0编程环境

1、编辑新文件

(1)单击“开始”按钮,选择“程序”“|Microsoft Visual Studio 6.0”菜单项,单击“Microsoft

Visual c++6.0”,进入VC6开发环境的主窗口;

(2)单击VC6主窗口菜单栏中的“文件”菜单项;

(3)单击“文件”下拉菜单的“新建”菜单命令,屏幕出现“新建”对话框; (4)单击“文件”标签,系统弹出选项卡; (5)在“文件”选项卡中单击C++source File 选项;

(6)在“目录”文本框中输入或选择存放程序的文件夹和在“新建”对话框中的“文件”

文本框中输入文件名;

(7)在“新建”对话框中单击“确定”按钮,系统返回VC6主窗口,并打开文件编辑窗口; (8)在文件编辑区窗口中输入C++程序文件;

(9)在输入C++程序的过程中,用户可以使用一些编辑功能键对源程序文件进行编辑修改,

如Ins键、Del键和回退键等;

2.编辑旧文件

(1)单击VC6主窗口菜单栏中的“文件”菜单项,系统弹出下拉菜单; (2)单击下拉菜单的“打开”菜单项,屏幕出现“打开”对话框;

(3)在“打开”对话框中选择存放需要编辑文件的盘符和文件夹,找到该文件后双击文件名(或单击文件名后再单击“打开”按钮),系统在文件编辑区中打开该C++源程序文件:

(4)修改已经打开的文件;

(5)窗口工具栏上的“保存”按钮,把编辑修改过的源程序文件重新保存。 3.编译和链接

(1)VC6主窗口菜单栏中的“编译”菜单项,系统弹出下拉菜单;

(2)下拉菜单中的“编译”菜单命令或单击工具栏上的编译图标,屏幕出现“询问是否创建默认项目工作区”对话框;

(1)单击“是”按钮,屏幕出现“询问是否保存文件”对话框;

(2)单击“是(Y)”按钮,系统开始对源程序文件进行编译。若有语法错误,系统在输出区窗口中显示错误信息。双击条错误信息,文件编辑窗口中的左边出现一个箭头,指向出现错误的程序行。此时,根据错误信息修改程序。然后重新编译,一直到没有错误为止; (3)单击“编译|链接”菜单命令或单击工具栏上的“编译|链接”图标,对编译好的源

第 25 页 共 28 页


(2013版)C++程序设计教学规范(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:邛崃市城区基准地价表2011

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: