《129750454899531250CA上机指导书().doc》由会员分享,可在线阅读,更多相关《129750454899531250CA上机指导书().doc(56页珍藏版)》请在三一办公上搜索。
1、C语言程序设计A实验指导书张吴波 编史旅华 审计算机实验教学示范中心2012年2月目录上机实验要求1实验一 熟悉C语言的运行环境2一、实验目的2二、实验要求2三、实验内容2实验二 简单程序设计8一、实验目的8二、实验要求8三、预习内容8四、实验内容10五、附加题11实验三 选择程序设计12一、实验目的12二、实验要求12三、预习内容12四、实验内容14五、附加题15实验四 循环程序设计16一、实验目的16二、实验要求16三、预习内容16四、实验内容18五、附加题20实验五 数组程序设计21一、实验目的21二、实验要求21三、预习内容21四、实验内容23五、附加题25实验六 函数程序设计26一、
2、实验目的26二、实验要求26三、预习内容26四、实验内容28五、附加题30实验七 指针程序设计31一、实验目的31二、实验要求31三、预习内容31四、实验内容33五、附加题35实验八 结构体程序设计36一、实验目的36二、实验要求36三、预习内容36四、实验内容38五、附加题40实验九 文件程序设计41一、实验目的41二、实验要求41三、预习内容41四、实验内容43五、附加题45实验十 综合程序设计实验47一、实验目的47二、实验要求47三、实验内容47实验十一 综合程序设计实验48一、实验目的48二、实验要求48三、实验内容48VC6.0调试程序49VC6.0编译常见错误52第一部分 编译错
3、误52第二部分 链接错误54上机实验要求上机实验一般经历上机前的准备(预习并且编程)、上机调试运行和实验后的总结三个步骤。1. 上机前的准备根据问题,进行分析,选择适当算法并编写程序。上机前一定要仔细检查程序(称为静态检查)直到找不到错误(包括语法和逻辑错误)。分析可能遇到的问题及解决的对策。准备几组测试程序的数据和预期的正确结果,以便发现程序中可能存在的错误。 上机前没有充分的准备,到上机时临时拼凑一个错误百出的程序,宝贵的上机时间白白浪费了;如果抄写或复制一个别人编写的程序,到头来自己一无所获。2. 上机输入和编辑程序,并调试运行程序首先调用C语言集成开发环境,输入并编辑事先准备好的源程序
4、;然后调用编译程序对源程序进行编译,查找语法错误,若存在语法错误,重新进入编辑环境,改正后再进行编译,直到通过编译,得到目标程序(扩展名为OBJ)。下一步是调用连接程序,产生可执行程序(扩展名为EXE)。使用预先准备的测试数据运行程序,观察是否得到预期的正确结果。若有问题,则仔细调试,排除各种错误,直到得到正确结果。在调试过程中,要充分利用C语言集成开发环境提供的调试手段和工具,例如单步跟踪、设置断点、监视变量值的变化等。整个过程应自己独立完成。学会独立思考,勤于分析,通过自己实践得到的经验用起来更加得心应手。3. 整理上机实验结果,写出实验总结实验结束后,要整理实验结果并认真分析和总结,写出
5、实验总结。实验总结一般包括如下内容:程序编写过程中碰到的问题,以及解决的思路,程序运行输入的数据以及其运行的结果,在实验过程的心得体会。本实验指导书中对部分内容的要求说明如下: 预习内容:本部分内容是用于帮助学生验证、加深理解教师上课内容,必须在上机实验前预习完成,并且认真思考,不能在实验课中作。 实验内容:上机实验前要求必须课前预习,预习时要求画出程序的流程图,写出相应的代码。并在上机实验课时调试运行,正确后上传实验系统。 附加题:实验完成后学有能力的同学自己完成。实验一 熟悉C语言的运行环境一、 实验目的1. 熟悉C语言运行环境。2. 掌握语言程序的书写格式和语言程序的结构。3. 掌握C语
6、言上机步骤,了解运行一个C程序的方法。二、 实验要求1. 学习VC的基本操作,编写程序。2. 运行程序并记录运行结果。3. 将源程序保存、上传并撰写本次实验心得体会三、 实验内容1. 了解VC+环境的组成。启动Microsoft visual C+ 6.0,熟悉VC+的编程界面。跟大多数的 Windows 应用程序一样,VC 最上面是菜单,然后是工具栏,中央是工作区,最下面一行是状态栏。我们现在看到的工作区,左边是 Workspace 窗口,右边是灰底的空白窗口。2. 了解工作区(Workspace)、工程(Project)、文件夹及源文件等概念。 1) VC 是按照工作区(Workspace
7、) 来管理项目和代码的。一次必须打开一个 Workspace。 2) 一个 Workspace 中可以包含一个或者多个工程(Project)。 3) 一个工程可以包含一个或者多个逻辑文件夹。 4) 一个文件夹里面可以包含零个或者多个文件。 5) 一个工程至少包含一个源代码文件。 6) 当创建新工程的时候,一个同名的 Workspace 同时被创建;该 workspace 只包含一个项目,就是新创建的这个项目。 或者稍稍详细一点说,VC 在管理项目和代码的时候,是按照如下一个树型的结构来组织的: Workspace (工作区)n Project 1 (工程 1) l Heaer files (一
8、个或者多个头文件) l Source files (一个或者多个源代码文件) l Other files (一个或者多个其他文件) n Project 2 (工程 2) l Heaer files (一个或者多个头文件) l Source files (一个或者多个源代码文件) l Other files (一个或者多个其他文件)。3. 编程步骤1) 创建一个新的 C 语言的工程2) 添加一个文件到一个空的工程中3) 编写程序4) 运行程序5) 调试程序具体步骤如下:1) 创建一个新的 C 语言的工程。选择菜单:文件 - 新建. ,选择工程。打开下面窗口:我们看到可以创建许多种类型的工程;并且
9、可以指定工程的名字,和存储位置。 事实上如果要开发简单的 C 语言程序,我们只需要创建一种工程:Win32 Console Application,也就是 Windows 32 控制台程序,或者俗称“黑屏”程序。我们进行如下设置: 顺序选项操作说明1工程类型选择“Win32 Console Application”2位置自己先建立的目录3工程名输入自己的工程名位置部分将在原来路径的后面自动加入“工程名”。4完成点击“确定”按钮在这里我们选择第一个选项,也就是默认选项:一个空的工程。然后选择完成。在窗口的左半部分的 workspace 上,我们可以看到有两个 Tab 页,ClassView 和
10、FileView。 ClassView 页面会显示当前工程中所声明的类、全局变量等;对于写C语言程序来说,这个页面没有什么大的作用。 FileView 页面显示了当前项目中的所有文件。在该工程下面,我们发现了三个预定义的逻辑文件夹,分别是:Source Files、Header Files、Resource Files。在每一个文件夹下面,都没有文件;这是因为此前我们选择的是创建一个空的工程。这三个文件夹是 VC 预先定义的,就编写简单的单一源文件的C程序而言,我们只需要使用 Source Files 一个文件夹就够了。查看物理文件夹。打开 Windows 资源管理器,定位到自己的目录。下面是
11、这些文件和文件夹的简单说明: 文件和文件夹说明文件 11.dsw这是 workspace 描述文件。文件 11.dsp这是 DemoQuestion 项目配置文件。包括逻辑文件夹在内的关于该项目的所有配置,都保存在此文件中。文件 11.ncb这是 VC 内部使用的一个临时文件。我们不必关心此文件。文件夹 DebugDebug 版本的编译输出文件将被保存在该文件夹中。2) 添加一个文件到一个空的工程中。选择菜单:文件 - 新建. 。打开下面窗口: 在 “文件” 页面中,进行如下操作: 顺序选项操作说明1文件类型选择“C+ Source File”2文件名输入:11.c注意:11.c 后面的 .c
12、 后缀是必要的。如果是要创建 .cpp 文件,该后缀就可以不写了。 3位置保持默认值,不需要修改。4完成点击“确定”按钮当该 .c 源文件创建后,在左边 Workspace 窗口的 “FileView” 页面中,可以看到该新创建的11.c 节点。3) 编写程序a) 输入源代码。请输入以下源代码。b) 编译。我们可以通过菜单或者工具栏按钮进行编译。 如果使用菜单,可以选择:“组建- 编译11.c ctrl+F7”或者直接“组建 - 组件11.exe F7”。如果使用工具栏,请使用鼠标右键单击工具栏的空白处,在弹出的菜单中选中“编译”一项,就可以打开编译工具栏,再使用相应的按钮。 如果编译完全成功
13、,会显示 “0 error(s), 0 warning(s)”。另外,即便有一些 warning,也可能编译成功。Warning 表示该代码应该不会影响程序运行,但是有可能存在潜在的问题,编译器不推荐这么写。 c) 除错 一般情况下,代码在编写过程中可能会发生各种错误。编译器检查出来的错误会被显示在 VC+ 6.0 环境的“组件” 窗口。4) 运行程序我们可以通过菜单或者工具栏按钮进行运行程序。 (运行程序之前要生成exe文件。可以通过“组建 - 组件11.exe F7”完成。菜单:“组件 -执行 11.exe”。编译工具栏:按钮。5) 调试程序其他调试技巧在以后的实验中会逐步体会到。4. 输
14、入并验证运行下述程序1) 分析程序,预测其运行结果,并上机验证。2) 参照上述第1题,编写一个C程序,输出如下信息:*Very Good!*3) 输入以下程序,编译运行。实验二 简单程序设计一、 实验目的1. 熟悉C语言的表达式、空语句及复合语句。2. 熟悉输入输出函数语句。3. 能设计简单的顺序结构程序。二、 实验要求1. 复习赋值语句和输入输出函数各种格式符的使用。 2. 复习数据类型和运算符的有关概念。3. 编写程序,运行程序并记录运行结果。4. 将源程序保存、上传并撰写本次实验心得体会 三、 预习内容1) 下面的程序试图计算由键盘输入的任意两个整数的平均值。请将下面的程序代码在VC中输
15、入,并编译运行。分别输入如下的几组数据,写出其程序运行的结果,并思考为什么会出现相应的结果?(注意知识点:整数与整数相除,int 类型变量的存储数的范围)第一组:2 6第二组 2 7第三组 2 -7第四组 4.5 5.5第五组 1234567890000 98765432100002) 下面的程序试图计算从键盘输入的5个数的和,请将下面的程序代码在VC中输入,并编译运行。分别输入如下的几组数据,写出其程序运行的结果,并思考为什么会出现相应的结果?(注意知识点:格式控制符的使用)第一组:1 2 3 4 5 第二组 1.1 2.2 3.3 4.4 5.5 第三组 10.001 20.0002 30
16、.00003 40.000004 50.0000005四、 实验内容1) 编程求。 要求a和x从键盘输入,计算当a=5.5,x=2.4时,y的值(提示:y=16.723221)。提示:调用数学库函数,还要在程序中包含math.h头文件。2) 编程:根据本金a、存款年数n和年利率p计算到期利息l。输出要有文字说明,取2位小数。提示:利息公式l=a*(1+p)n-a(当输入本金a=1000,存款年数=2,年利率=0.05时,利息l=102.50)五、 附加题1) 编程从键盘输入两个整数分别给变量a和b,分别写出不借助于其他变量和借助于其他变量的条件下,将变量a和b的值实现交换。2) 设一个正圆台的
17、上底半径r1,下底半径r2,高h。请设计一程序,从键盘输入r1,r2,r3;计算并在显示器上输出该圆台的上底面积s1,下底面积s2,圆台的体积V。【要求】 (1)r1,r2,h用scanf函数输入,且在输入前要有提示; (2)在输出结果时要有文字说明,每个输出值占一行,且小数点后取2位数字。【提示】 (1)圆面积计算公式为 s=r2。其中r为圆半径。 (2)圆台体积计算公式为 V=实验三 选择程序设计一、 实验目的1. 正确理解C语言表示逻辑量的方法。2. 学会正确使用逻辑运算符和逻辑表达式、关系运算符和关系表达式。3. 熟悉并掌握if和switch语句。4. 熟悉选择结构程序中语句的执行过程
18、。二、 实验要求1. 复习关系表达式、逻辑表达式和if 语句、switch语句。2. 学习程序的调试方法。3. 编写程序,运行程序并记录运行结果4. 将源程序保存、上传并撰写本次实验心得体会三、 预习内容1) 下面程序的功能从键盘是从键盘输入两个实数以及二者和,判断使用者是否计算正确。请将下面的程序代码在VC中输入,并编译运行。分别输入如下的几组数据,写出其程序运行的结果,并思考为什么会出现相应的结果?(注意知识点:float类型数据的不精确性) 第一组: 1.0 2.0 3.0第二组: 1.1 2.1 3.2第三组: 10.001 20.002 30.0032) 请将下面的程序代码在VC中输
19、入,并编译运行。分别输入如下的几组数据,写出其程序运行的结果,并思考为什么会出现相应的结果?(注意知识点:switch语句的执行过程,break语句)第一组: 1第二组: 2第三组: 33) 请将下面的程序代码在VC中输入,并编译运行。分别输入如下的几组数据,写出其程序运行的结果,并思考为什么会出现相应的结果?(注意知识点:else的匹配规则)第一组: 1 1 1第二组: 1 1 2四、 实验内容1) 编写程序,学生单科成绩按下列标准分等(其中x为每个学生的单科成绩)总成绩 等级英文名称x60 bad60=x80 middle80=x90 good90=x excellent现输入某个学生的单
20、科成绩,请输出他的等级标准。2) 编写程序在屏幕上显示如下的菜单,并从键盘输入一个整数,如果数字在1-4的范围内,则输出这个数字后的文字。如果不在0-4的范围内则输出:输入错误。例如,输入2 输出:加法;输入4 输出:除法。五、 附加题1) 编写程序,输入a,b,c三个整数,输出其中值居中的那个数及其值。例如输入12,40,23,输出值居中的那个数是c,其值为232) 从键盘输入一个年份和月份,输出该月有多少天(考虑闰年)。实验四 循环程序设计一、 实验目的1. 熟悉并掌握while语句,do-while语句和for语句实现循环的方法。2. 掌握程序设计中循环的常用各种算法,例如穷举法、迭代法
21、等。3. 理解循环结构程序中语句的执行过程。二、 实验要求1. 复习for、while 、do-while语句和continue、break语句。2. 在程序调试中,要实现准备充分的测试用例,学会单步调试程序的技巧。3. 编写程序,运行程序并记录运行结果。注意程序的书写格式。4. 将源程序保存、上传并撰写本次实验心得体会三、 预习内容1) 下面程序的功能从键盘是从键盘输入一个正整数,输出它的阶乘。请将下面的程序代码在VC中输入,并编译运行。分别输入如下的几组数据,写出其程序运行的结果,并思考为什么会出现相应的结果?(注意知识点:int 类型变量的存储范围;正确输入数据的方法)第一组: 5第二组
22、: 10第二组: 202) 请将下面的程序代码在VC中输入,并编译运行。分别输入如下的几组数据,写出其程序运行的结果,并思考为什么会出现相应的结果?(注意知识点:break和continue语句的语法规则;循环条件中1的意义)第一组: 1 -2 3 4 5 0 6 7第二组: 0 1 2 3 4 5 -6 7四、 实验内容1) 在屏幕上显示如下的菜单,程序功能是当从键盘输入一个整数时,对其判断,如果数字在1-4的范围内,则从键盘输入两个数,完成相应的运算后输出其结果。如果不在0-4的范围内则输出:输入错误。例如输入2,提示输入两个数,输出这两个数的差。计算完后再输出“是否继续(Y/N)?”,如
23、果输入Y,则继续显示菜单,提示输入运算代码进行计算。提示,程序实现步骤如下:1、输出如图的菜单2、从键盘输入一个整数3、对输入的数进行判断:如果等于1,提示输入两个数,输出二者的和,执行第4步。如果等于2,提示输入两个数,输出二者的差,执行第4步。如果等于3,提示输入两个数,输出二者的积,执行第4步。如果等于4,提示输入两个数,输出二者的商,执行第4步。如果等于0,执行第7步4、输出:是否继续(Y/N)5、从键盘输入一个字符6、对输入的数进行判断: 如果等于字符Y,清除屏幕上的内容,执行第1步 如果等于字符N,执行第7步7、结束程序流程图代码2) 编写程序,计算。要求:a) 使最后一项 的值小
24、于等于给定的即可结束运算,的值从键盘输入(提示:例如,从键盘输入0.00001时,e=2.718279)流程图代码五、 附加题1) 编写程序输出500以内最大的10个素数及其之和。 2) 编写程序完成如下功能,输入一个字母,输出由这个字母决定其高度的字符“金字塔”。例如输入小写字母d,则输出左边的图形,如输入大写字母D,则输出右边图形。AA B AA B C B AA B C D C B Aaa b aa b c b aa b c d c b aAA B AA B C B AA B C D C B Aaa b aa b c b aa b c d c b a 实验五 数组程序设计一、 实验目的1
25、. 掌握数组声明、数组初始化赋值、数组元素引用和数组输入输出的使用。2. 掌握字符数组和字符串函数的使用。3. 了解一些与数组相关的非数值计算方法,如查找、插入、删除和排序等。二、 实验要求1. 复习数组的定义、数组的输入输出和常用的字符串函数。2. 在程序调试中,要实现准备充分的测试用例。3. 编写程序,运行程序并记录运行结果。注意程序的书写格式。4. 将源程序保存、上传并撰写本次实验心得体会三、 预习内容1) 请将下面的程序代码在VC中输入,并编译运行。分别输入如下的几组数据,写出其程序运行的结果,并思考为什么会出现相应的结果?(注意知识点:变量在内存中的分布,数组越界问题)第一组: 1
26、2 3 4 5 6第二组: 10 20 30 40 50 602) 请将下面的程序代码在VC中输入,并编译运行。分别输入如下的几组数据,写出其程序运行的结果,并思考为什么会出现相应的结果?(注意知识点:变量在内存中的分布,数组越界问题)第一组: abcde ABC第二组: abcdefg ABCDE第三组:ABCDEFG abcdefghi四、 实验内容1) 编制一程序,从键盘输入一个10进制的整数x和需要转换的进制n,输出x对应的n进制的数。例如,从键盘输入20和8,在数组b中应该是2 4 实现步骤:1、定义一个data数组和index变量2、将数组data中的所有元素和index置为03、
27、如果x大于0,执行第4步,否则执行第7步4、将x除以n的余数放在data的第index个元素中5、index加16、执行第三步7、逆向输出数组data中的值流程图代码2) 编制一程序,从键盘输入一串单词,输出其中最长的单词。 流程图代码五、 附加题1) 从键盘输入一个字符串,删除其中的字母a后输出。例如,输入字符串“abcaca”,输出bcc2) 使用二维数组打印如下图形0 0 0 100 0 9 80 7 6 5 4 3 2 1 实验六 函数程序设计一、 实验目的1. 掌握定义函数的方法及函数的调用过程(函数的调用格式、调用方式及被调用函数的使用说明);2. 掌握函数实参与形参的对应关系以及
28、“值传递”的方式;3. 掌握函数的嵌套调用方法。4. 掌握全局静态变量和局部动态变量的概念和使用方法;二、 实验要求1. 复习函数的定义、调用和宏定义。2. 在程序调试中,要实现准备充分的测试用例。3. 编写程序,运行程序并记录运行结果。注意程序的书写格式。4. 将源程序保存、上传并撰写本次实验心得体会三、 预习内容1) 请将下面的程序代码在VC中输入,并编译运行。写出其程序运行的结果,并思考为什么会出现相应的结果?(注意知识点:全局变量的使用)2) 请将下面的程序代码在VC中输入,并编译运行。写出其程序运行的结果,并思考为什么会出现相应的结果?(注意知识点:静态变量的使用)四、 实验内容1)
29、 使用结构化程序设计的方法,计算并输出 的值要求:1、定义函数long fact(long n),该函数的功能是返回参数n的阶乘2、在主函数中调用fact函数,计算并输出s的值3、主函数中要求对m,n的合法性进行判断。4、分别划出main函数和fact函数的流程图流程图代码2) 若正整数A的所有因子(包括1但不包括自身,下同)之和为B,而B的因子之和为A,则称A和B为一对亲密数。例如,6的因子之和为1+2+3=6,因此6与6为一对亲密数(即6自身构成一对亲密数);又如,220的因子之和为l+2+4+5+10+11+20+22+44+55+110=284,而284的因子之和为1+2+4+71+1
30、42=220,因此,220与284为一对亲密数。编写程序,求500以内的所有亲密数对,如下图所示。要求:1、定义函数int sumfact(int n),该函数的功能是返回参数n的因子的和2、在主函数中调用sumfact函数,输出500以内的亲密数3、分别划出main函数和sumfact函数的流程图流程图代码五、 附加题1) 已知,使用结构化程序设计的方法编写程序,求s(x)后面的20项的和,x从键盘输入。(当x=1时,s=0.746824)。要求:1、定义函数long fact(long n),返回参数n的阶乘2、定义函数double power(double x,int n),返回参数x的
31、n次方3、在主函数中调用上述函数计算s的值并输出2) 使用结构化程序设计的方法计算输出两个正整数的最大公约数和最小公倍数要求:1、 定义函数int hcf(int m,int n)返回参数m和n的最大公约数2、 定义函数int lcd(int m,int n,int h),返回参数m,n的最小公倍数,其中h是m和n的最大公约数。在主函数中调用上述函数实验七 指针程序设计一、 实验目的1. 掌握指针变量的定义与引用。2. 掌握指针与变量、指针与数组的关系。 3. 掌握用数组指针作为函数参数的方法。4. 正确使用指针操作数组元素。二、 实验要求1. 复习指针的定义、引用和指针与数组的关系。2. 在
32、程序调试中,要实现准备充分的测试用例。3. 编写程序,运行程序并记录运行结果。注意程序的书写格式。4. 将源程序保存、上传并撰写本次实验心得体会三、 预习内容1) 请将下面的程序代码在VC中输入,并编译运行。写出其程序运行的结果,并思考为什么会出现相应的结果?.(注意知识点:通过指针作为参数,修改主调函数中的变量)2) 请将下面的程序代码在VC中输入,并编译运行。写出其程序运行的结果,并思考为什么会出现相应的结果?. (注意知识点:使用指针通过一重循环遍历二维数组)四、 实验内容1) 程序要求从键盘输入最多30个成绩,统计输出其中不及格的人数(成绩=90的为及格)。主函数的代码已经给出,函数v
33、oid count(int score,int *greate,int * unpass,int len)的功能是求出score数组中的不及格人数和优秀人数,分别通过参数greate,unpass返回,参数len说明score数组中存放有效成绩的个数要求:请画出count函数的流程图,将程序代码输入VC,完成count函数,使之可以实现程序的功能。并认真体会main函数中输入数据的方法。流程图代码#include #define LEN 30void count(int score,int * great,int* unpass,int len);int main()int i,scrLEN,
34、n,greatCnt,unpassCnt;printf(请输入成绩个数);scanf(%d,&n);while(nLEN)printf(个数不能超过30,重新输入);scanf(%d,&n);for(i=0;in;i+)scanf(%d,&scri);while(scri100)printf(成绩不合法,重新输入);scanf(%d,&scri);count(scr,&greatCnt,&unpassCnt,n);printf(不及格人数:%dn ,unpassCnt);printf(优秀人数%dn,unpassCnt);void count(int s,int * great,int * u
35、npass,int len) 2) 编写函数,int cat_string(char * dst,char * src),它的功能是将src所指向的字符串连接到dst所指向的字符串的后面,返回从src中连接到dst后面的字符的个数。主函数接收从键盘输入的两个字符串,调用cat_string函数将后面的字符串连接到前面的字符串后面,将新字符串输出。要求,画出cat_string函数的流程图,写出程序代码。流程图代码五、 附加题1) 请使用指针的方法编写程序,程序的功能是从键盘输入一个字符串,统计其中单词的个数(单词以空格或者逗号等其它非字母符号分隔。例如,输入His idea was good,
36、 but he got off on the wrong foot when he started doing it,输出17。2) 请使用指针的方法编写程序,程序的功能是从键盘输入一串正整数(以0结束输入),按从大到小的顺序输出,例如输入1 4 6 2 8 7 0 输出 8 7 6 4 2 1 。实验八 结构体程序设计一、 实验目的1、掌握结构变量的基本使用方法2、掌握结构数组的基本使用方法3、掌握结构指针的概念4、掌握链表的概念和基本操作二、 实验要求1. 复习结构体类型以及其变量的定义方法、结构体变量的引用。2. 在程序调试中,要实现准备充分的测试用例。3. 编写程序,运行程序并记录运行
37、结果。注意程序的书写格式。4. 将源程序保存、上传并撰写本次实验心得体会三、 预习内容1) 请将下面的程序代码在VC中输入,并编译运行。分别输入如下的几组数据,写出其程序运行的结果,并思考为什么会出现相应的结果。(注意知识点:结构体的定义和使用)第一组:左上角坐标1 2 右下角坐标5 6第二组 左上角坐标100 120 右下角坐标 50 782) 请将下面的程序代码在VC中输入,并编译运行。分别输入如下的几组数据,写出其程序运行的结果,并思考为什么会出现相应的结果。(注意知识点:按照从大到小顺序创建链表)第一组:个数6 右下角坐标 9 4 2 -1 10 20第二组:个数10 右下角坐标 12
38、 9 10 20 25 5 8 2 1 0 四、 实验内容1) 编写程序,定义一个复数的结构体类型,定义两个结构体的变量分别表示两个复数,从键盘输入复数的实部和虚部,输出这两个复数的和。代码2) 已知学生的信息包括姓名、成绩。编写程序从键盘输入5个学生的信息,输出其中成绩最高者的姓名和成绩。流程图代码五、 附加题1) 建立一个链表,结点包括的成员为:职工号、工资。已知有5个职工号和工资为101,2300;103,3000;105,2500;107,4000;109,3600。从键盘输入5个职工的信息,按照如下格式输出。要求:1、定义creat函数,该函数的功能是建立链表2、定义list函数,该
39、函数的功能是输出数据实验九 文件程序设计一、 实验目的1、掌握文件的基本概念2、掌握文本文件的打开和关闭操作3、掌握文本文件的顺序读、写方法二、 实验要求1. 复习文件的概念,打开文件、读写文件的方法。2. 在程序调试中,要实现准备充分的测试用例。3. 编写程序,运行程序并记录运行结果。注意程序的书写格式。4. 将源程序保存、上传并撰写本次实验心得体会三、 预习内容1) 请将下面的程序代码在VC中输入,并编译运行。分别输入如下的几组数据,写出其程序运行的结果,并思考为什么会出现相应的结果。(注意知识点:使用fgets读取文件)第一组数据:在程序所在的文件夹下建立test1.txt文件,在文件中
40、输入如下内容,程序运行时,输入的文件名为test1.txt第二组数据:在程序所在的文件夹下建立test2.txt文件,在文件中输入如下内容,程序运行时,输入的文件名为test2.txt2) 请将下面的程序代码在VC中输入,在程序所在的文件夹下建立分别建立test3.txt和test4.txt文件,在文件中按照如下格式分别输入数据。(注意知识点:使用fseek函数随机读取)test3.txt文件格式如下图:每个数字之间用一个空格隔开 test4.txt文件格式如下图:每个数字首尾对齐,即每个数字占4个位置(不足补空格)后面跟一个空格,例如5 后应有4个空格,10后面有3个空格,17后面有3个空格。 然后编译运行程序,分别输入如下的几组数据,写出其程序运行的结果,并思考为什么会出现相应的结果。第一组数据:文件名test3.txt 位置:15第二组数据:文件名test3.txt 位置:42第三组数据:文件名test3.txt 位置:69第四组数据:文件名test3.txt 位置:96第五组数据:文件名test4.txt 位置:15第六组数据:文件名test4.txt 位置:42第七组数据:文件名test4.txt 位置:69第八组数据:文件名test4.txt 位置:96第