C程序设计谭浩强版实验
指导书
The document was prepared on January 2, 2021
《C++程序设计》
实验教学指导书
课程编号:
撰写人:朱世华
审核人:
前言
程序设计是一门实践性很强的课程,通过实验可以巩固和加强课堂教学内容,提高学生实际工作能力和动手能力,并为后续课程和从事实践技术工作奠定重要的基础。因此,学生在进行理论知识学习的同时,必须十分重视实践环节----上机。
上机实验时应该一人一组,独立上机。在上机过程中出现的问题,一般应自己独立处理,学生应在实验前将教师指定的题目编好程序,然后上机输入和调试。
上机前应事先作好准备工作,以提高上机实验的效率,准备工作至少应包括:
(1)复习和掌握与本实验有关的教学内容。
(2)准备好上机所需的程序。
(3)对运行中可能出现的问题应事先做出估计;对程序中有疑问的地方,应做上记号,以便上机时给予注意。
(4)准备好调试和运行时所需的数据。
实验设备与环境:
1、硬件配置
PentiumⅡ以上PC兼容机或品牌机,配有彩色显示器、鼠标、键盘,内存不小于
32MB,硬盘自由空间不少于60MB。推荐配置为内存256MB(或以上),硬盘自由空间1GB 以上。
2、软件配置
操作系统:Windows XP,Windows 2000以上版本
开发环境:Microsoft Visual C++ 2010以上版本。
目录
实验一 Visual C++ 2010的基本用法 (1)
实验二数据类型、运算符和表达式 (4)
实验三三种基本结构的实现1 (7)
实验四三种基本结构的实现2 (9)
实验六指针 (13)
实验七函数 (14)
实验八结构和联合 (17)
实验九类与对象 (20)
实验十综合实验 (23)
实验一 Visual C++ 2010的基本用法
一、实验目的
1.熟悉Visual C++2010集成开发环境的基本命令和功能键。
2.学习完整的C++ 程序开发过程。
3.理解简单的C++ 程序结构。
二、实验内容与步骤
本次实验将学习有关Visual C++ 开发环境的一些知识,并尝试实现一个简单的DOS程序和Windows程序。通过本次实验,可以了解用Visual C++ 开发应用程序的全过程。
1、熟悉Visual C++ 开发环境
我们选择Visual C++那一项就可以了。下图是VS2010打开后的画面,当然可能你的界面跟我的不一样,没关系,那只是设置问题。
菜单栏我们常用的是File,View和Debug菜单下的菜单项。工具栏各项其实在菜单栏都有与它们对应的菜单项,功能是一样的。左侧面板可以放多个视图,我这里放了解决方案浏览器、类视图和资源视图,解决方案浏览器中我们可以看到所有头文件和源文件构成的树,头文件就是.h后缀的文件,源文件就是.cpp后缀的文件,类视图中显示了每个工程的每个类,也是树状结构,在解决方案浏览器或类视图中双击每一项,中间区域都会打开相应的文件或者到类的位置。资源视图中显示了界面工程中使用的一些界面资源。中间区域默认是打开start page,打开一个工程后我们在左侧面板上双击某项时,中间区域会
出现相应的界面。右侧面板上有个Toolbox,是在界面工程中用来往界面资源模板上添加控件的,里面包含了各种控件,直接拖到模板上就行了。底侧还有几个标签,其中一个是output,这是输出视图,用来输出程序运行信息和我们程序中写的一些调试信息,还有一个Find Result视图,用来显示我们搜索任何字母或单词的结果。
File->New->Project项可以创建一个工程,也可以在start page中点击New Project...,然后出现的New Project窗口中有多个工程类型可以选择, Win32 Console Application是Win32控制台程序,MFC Application是MFC应用程序,可以建立以开发界面程序,Win32 Project是Win32程序,Empty Project是空程序,MFC DLL用来建立生成动态链接库的工程,其它的不常用就不介绍了。我们要建立一个没有应用程序界面的只有Dos命令行界面的工程就选Win32 Console Application项,我们学习C++基础知识用这个就可以了。它跟Win32 Project的区别是,它的入口是main函数,而Win32 Project的入口是WinMain函数。
File->Open->Project/Solution可以打开以前建立的工程或者解决方案,一个解决方案中可以包含多个工程,你可以把它理解为多个有关系或者没关系的工程的集合,有时把多个工程放到一个解决方案里调试起来很方便。
在View下的菜单项我们就可以控制它。View->Solution Explorer可以打开或关闭解决方案浏览器视图,View->Class View用来控制类视图的显示,View->Resource View控制资源视图的显示,当然只有界面工程的资源视图中才会有内容。View->Output和View->FindResults等项大家应该也知道它们的含义了吧。
Debug->Start Debugging(快捷键是F5)用来开始调试,Debug-
>Toggle Breadpoint(快捷键是F9)用来设置断点,设置断点后然后开始调试,程序运行到断点时会停下来,我们用鼠标放到断点处的各个变量上时可以看到当时这些变量的值。Debug->Start Without Debugging表示不调试直接运行,也就是到断点处也不会停止运行。Debug->Step Into(快捷键是F11)用来单步执行,遇到子函数就进入并且继续单步执行;Debug->Step Over(快捷键是F10)也是单步执行,但在单步执行时,在函数内遇到子函数时不会进入子函数内单步执行,而是将子函数整个执行完而跳到下一步,也就是把子函数整个作为一步。
工具栏上有个下拉列表框,它包含有Debug、Release和Configuration Manager,选择Debug时为调试模式,生成的可执行程序中包含调试信息,我们可以调试并清楚的看到变量值,选择Release时生成的可执行程序中不含调试信息,在设置断点后看到的变量值可能不准确。
msdn帮助可以点Help->View Help(快捷键是F1),也可以点开始->Microsoft Visual Studio 2010->Microsoft Visual Studio 2010 Documentation打开。
2、控制台应用程序的建立
用Appwizard建立一个控制台应用程序,在显示器上输出“Hello,World!”。
(1)创建项目(project)
首先创建一个项目,用来管理用户的应用程序。创建项目的步骤为:
①启动visual Studio 2010。
②从主菜单中选择菜单项“File”→“New”,打开“New”对话框。
③选择“Projects”标签,从项目列表中单击“Win32 Console
Application”选项。
在“project name”编辑框中键入项目的名字,如“hello”,系统将自动为用户的项目分配一个默认的目录。也可以在“Location”编辑框中重新输入项目存放路径。
单击“OK”按钮继续。
(2)编辑源程序
在项目中添加一个文件:
①从主菜单中选择菜单项“File”→“New”,打开“New”对话框。
②在“New”对话框中选择“File”标签,单击“C++ Source File”选
项,建立源文件(扩展名为.cpp)。选中“Add to Project”复选框。
在右边的“File name”编辑框中为文件指定一个名字,如
“Hello”,系统将自动加上后缀“.cpp”。
这时在编辑窗口将自动打开一个新的空白文件,在文件中输入源程序。
本例中输入以下内容:
#include <>
void main()
{
cout<<〞hello,world!〞< } 仔细检查输入的内容,确保内容正确。 (3)保存源文件 单击工具栏中的“save”图标,或选择菜单项“File”→“Save”保存源文件。 (4)编译源文件 选择菜单项“Build”→“Compile ”来编译源文件,如果输入的内容没有错误,那么,在屏幕下方的输出窗口将会显示: error(s),0 warning(s) 如果在编译时得到错误或警告,则表明源文件出现错误,检查源文件,改正错误后再编译,直至无误。 (5)链接程序 选择菜单项“Build”→“Build ”链接程序,如果链接过程中没有错误,则在输出窗口会显示: error(s),0 warning(s) 如果有错误,应改正,然后重复(4)、(5),直至无误。 (6)运行程序 选择菜单项“Build”→“Execute ”运行程序,将显示一个类似于DOS 的窗口,在窗口中第一行输出“hello,world!”,第二行输出“Press any key to continue”,提示用户按任意键回到开发环境。 3、编写一个简单的C++ 程序 要求:输入圆的半径,计算圆的周长和面积。 步骤: (1)按照上面的步骤创建一个项目,名字为“Circle”。 (2)在项目中增加一个文件,命名为“”。 (3)在文件中输入源程序如下: #include<> const double PI = ; < else cout< } 判断素数的算法,在以前学习循环的时候已经学过了,在这里只是把这个算法用函数的形式表示出来。这里要注意函数的定义声明的方法和格式。 2、分析程序的运行结果 输入下列程序,运行它,分析得到的结果。 #include<> int n=0; int func( int x=10 ); void main() { int a, b; a=5; b=func(a); cout<<”\nlocal a=”<