C语言实验
- 格式:doc
- 大小:393.00 KB
- 文档页数:42
《程序设计》实验项目及要求说明:1. 针对每一个实验新建一个工程(Project),并将工程命名为“ex**.dsw”,其中的“**”为实验编号,扩展名“.dsw”由系统自动生成,命名时不必键入。
比如实验1的工程命名为“ex01.dsw”。
2. 每个实验要求编写一个源程序,将该源程序命名为“ex**.cpp”。
对于设计型和综合型实验,应提交源程序文件“ex**.cpp”和可执行文件“ex**.exe”作为实验结果。
实验1 新建并运行一个程序实验目的掌握在VC++6.0环境中新建一个控制台工程的方法。
实验准备检查计算机上是否已安装VC++6.0。
实验内容1. 启动VC++6.0。
2. 点击“文件”菜单栏,选择其中的“新建”菜单项,可以见到如图1.1所示的“新建”对话窗。
(4)为新工程命名(1)选“工程”标签(3)设置新建工程所在的文件夹(2)选“控制台工程”图1.1 在VC集成环境中新建控制台工程选择其中的“工程”标签;(2) 点击“控制台工程(Win32 Console Application)”选项;(3) 设置新建该工程所在的文件夹,可以用输入框右侧的“...”按钮进行选择;图中以为“D:\VC_Exercise\”例,可根据计算机上的情况进行相应的设置。
(4) 输入工程的名称。
为编号及说明的方便,将本实验的工程命名为“ex01”。
设置工程所在文件夹时,只设置为“D:\VC_Exercise\”,输入工程名称“ex01”时,该名称会自动添加到所设置的文件夹后面。
3. 完成上述设置后,点击“确定”按钮,可以见到如图1.2所示的对话窗。
点击其中的“空工程”(An empty project)选项,再点击“完成”按钮。
并在接着出现的对新建工程有关信息进行确认的对话框中直接点击“确定”按钮。
点击“空工程”选项图1.2 新建空的控制台工程4. 再次点击“文件”菜单栏的“新建”菜单项(1) 在如图1.3所示的“新建”对话窗中选择“文件”标签;(2) 点击“源程序”(C++ Source File)选项;(3) 输入源程序名称,系统将自动以“.cpp”作为源程序文件的扩展名。
为编号及说明的方便,将本实验的源程序命名为“ex01”。
图1.3中以myprog为源程序名,实验时请以“ex01”作为文件名,以后各个实验均按此方式命名。
5. 完成设置后点击“确定”按钮,新的工程及空的程序文件已经建立,如图1.4所示。
此时画面除了窗口框架外,主要有三部分:右上为编辑窗口,用于录入并修改源程序;下方为信息窗口,用于查看系统编译时给出的提示;左上为工作区窗口,其下方带有“ClassView ”、“FileView ”等标签,用于描述当前工程的结构。
6. 在图1.4所示的编辑窗中录入如下的程序代码:#include "stdio.h" void main( ) {printf("This is my first C program.\n"); }图1.5 编译、连接、运行快捷按钮编译编译、连接并运行编译并连接图 1.4 新建空工程及源程序文件后的VC 集成环境画面编辑窗口当前光标所在位置信息窗口图1.3 新建空的源程序文件(2)点击“源程序”选项(1)点击“文件”标签(3)输入源程序名录入完成后,存盘。
7. VC集成环境为编译、连接、运行等步骤提供了快捷按钮,如图1.5所示。
点击红色的“!”按钮,如果程序有错,信息窗口中会出现错误情况提示,仔细阅读窗口中的内容并按提示修改程序,重新存盘、点击“!”按钮运行;程序没有错误则将被运行,画面上会出现一个黑底白字的窗口,显示程序运行的情况。
查看程序运行结果后,按照画面上的提示“Press any key to continue”按任意键关闭该窗口。
实验思考题1. 完成上述实验步骤后,关闭VC,重新按上述步骤操作一遍,执行到第几步时系统发出提示表示操作不能进行?提示信息是什么?2. 打开实验建立的文件夹,查看其中有哪些文件?哪一个是项目文件(也称工程文件)?哪一个是源程序文件?哪一个是编译生成的目标文件?哪一个是连接得到的可执行文件?3. 字母的大小写对程序有影响吗?把main、include、void等单词中部分字母(或者全部)换成大写,看看程序能不能运行。
把"This is my first C program."中的部分字母(或者全部)换成大写,看看程序能不能运行。
4. VC的控制台程序能够显示中文吗?将程序中的英文“This is my first C program.”换成相应的中文“这是我的第一个C语言程序。
”,再运行程序,观察结果。
5. 标点符号是半角还是全角对程序有影响吗?把程序中的部分标点符号(或者全部)换成全角的标点,看看程序能不能运行。
6. 在进行上述操作时,如果程序不能运行,“信息窗口”中显示了什么内容?7. 关闭VC,在实验建立的文件夹中找到后缀名为“dsw”的工程文件,双击,观察发生的现象。
该现象说明什么问题?能否点击“!”运行程序?8. 关闭VC,在实验建立的文件夹中找到后缀名为“cpp”的源程序文件,双击,观察发生的现象(如未能启动VC则需要将系统设置为以VC打开cpp文件)。
该现象说明什么问题?能否点击“!”运行程序?9. 一个源程序文件中能不能放两个程序?打开如上实验建立的程序,在其下方添加如下的程序:#include "stdio.h"void main( ){printf("This is another C program.\n");}即,在一个源程序文件中录入了一前一后两个程序。
此时,程序还能运行吗?10. 一个工程中能不能安排两个含有main的源程序文件?打开如上实验建立的程序,关闭编辑窗口(点击图1.4的“!”上方的“×”即可),按实验的步骤4至步骤7进行操作,但为源程序命名时不要用最初做实验时的源程序文件名,换成其它文件名。
程序还能运行吗?实验2 数据类型对应的字节数实验目的在计算机中存储一种类型的数据是有固定的形式的,占用的字节数也是固定的。
本实验用于验证在VC++6.0环境中各种类型的数据在存储时分别使用多少个字节。
实验准备查阅int等每一种数据类型对应的字节数。
实验内容1. 新建工程“ex02”,在其中新建源程序文件,并录入以下程序并观察运行结果:#include "stdio.h"void main( ){int bs;char tp;bs=sizeof(tp);printf("系统用%d字节存储一个该类型的数据.\n",bs);}2. 将程序中的“char”改成各种数据类型,重新运行程序,观察运行结果。
实验思考题1. 以下各种数据类型对应的字节数是多少?signed char unsigned charsigned short int unsigned short intsigned int unsigned intsigned long int unsigned long intfloat doublelong double2. 整数类型标识符的前面可以加signed或者unsigned对存储方式加以限制,这样的限制是否影响相应类型对应的字节数?实验3 整数的存储形式实验目的在计算机中无符号整数以原码形式存储,带符号数以补码形式存储。
本实验用于验证存储整数时各个二进制位的取值情况。
实验准备查阅各种整数类型数据的存储形式。
实验内容1. 新建工程“ex03”,在其中新建源程序文件,并录入以下程序并观察运行结果。
#include "stdio.h"typedef signed short int datatype;void main( ){datatype x=-1949;unsigned char ch,*q;int i,j;q=(unsigned char*)&x;for(i=sizeof(datatype)-1;i>=0;i--){ch=q[i];for(j=0;j<8;j++){putchar(48+(ch>>7));ch<<=1;}putchar(32);}printf("\n");}2. 将程序第2行的“signed short int”改成char、int、long等各种整数的数据类型,并将第5行的-1949改成其它数据(应考虑正数、负数和0等各种情况),重新运行程序,观察运行结果。
实验思考题填写下面表格中的二进制形式。
修改程序的有关内容,根据程序运行结果验证表中填实验4 实数的存储形式实验目的在计算机中实数以浮点数形式存储。
本实验用于验证存储实数时各个二进制位的取值情况。
实验准备查阅float和double类型数据的存储形式。
实验内容1. 新建工程“ex04”,在其中新建源程序文件,录入实验3的程序,将其中第2行的“signed short int”改为“float”,将第5行的-1949改成-194.9,运行程序并观察运行结果。
2. 将数据的类型改成double,将数据改成其它值(应考虑正数、负数和0等各种情况),重新运行程序,观察运行结果。
实验思考题填写下面表格中的二进制形式。
修改程序的有关内容,根据程序运行结果验证表中填写的数据是否正确。
实验5 程序改错实验目的本实验要求掌握只含有main的程序格式,熟练掌握VC的操作。
实验准备查阅程序的基本格式,熟悉在VC中编程的基本操作。
实验内容1. 新建工程“ex05”,在其中新建源程序文件,录入下面的程序:2. 程序中有若干错误,对该程序进行编译,观察信息窗口中显示了哪些错误提示。
3. 找到系统提示的第一处错误,双击该错误信息,观察编辑窗口中光标的位置变化及形如“”的标记。
4. 继续修改程序中的错误,直到程序可以正确运行。
实验思考题1. 录入程序后,由于程序中存在错误,编译时系统的提示信息有哪些?分别是什么含义?2. 如何根据系统提供的错误提示信息快速地定位到错误所在的行?实验6 运用printf显示数据实验目的printf是系统提供的最常用的显示工具。
本实验要求掌握printf各种格式符的用法。
实验准备查阅printf各种格式符的用法。
实验内容1. 新建工程“ex06”,在其中新建源程序文件,录入下面的程序:#include "stdio.h"void main( ){char a1=75,a2=-47;short int b1=75,b2=-47;long int c1=1234567,c2=-9876543;float d1=3.1416,d2=-8.9512;double e1=0.123456789,e2=-0.987654321;printf("b1=#%-5d#\n",b1);}2. 程序中已有一行printf语句用于实现下面的要求(4),以此行为例,在程序中再添加10行,每一行是一条printf语句,使得程序能够依次显示出以下内容。