C语言运行环境.pdf

上传人:w**** 文档编号:72099279 上传时间:2023-02-08 格式:PDF 页数:15 大小:569.93KB
返回 下载 相关 举报
C语言运行环境.pdf_第1页
第1页 / 共15页
C语言运行环境.pdf_第2页
第2页 / 共15页
点击查看更多>>
资源描述

《C语言运行环境.pdf》由会员分享,可在线阅读,更多相关《C语言运行环境.pdf(15页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、实验一 C 语言运行环境一、实验目的一、实验目的1了解 TC 环境的组成。2学习 TC 环境的使用方法。3了解 C 语言程序从编辑、编译、连接到运行并得到运行结果的过程。二、实验内容二、实验内容1了解 TC 环境的组成。开机后进入 WINDOWS 系统的资源管理器,找到 TC 环境所在的文件夹。一般情况下,TC 环境都安装在名为TC的子目录下,具体存于硬盘的哪个分区请询问实验室管理员。查看在 TC 目录下的以字母 TC 开头的文件,是否包括了TC.EXE、TCC.EXE、TLINK.EXE、TCCONFIG.TC 等文件;查看INCLUDE、LIB 两个子目录下的文件。复习这些文件的作用。2进

2、入、退出和定制 TC 环境。运行 TC 目录下的 TC.EXE 文件,就可进入 TC 环境。在 WINDOWS 环境下运行文件的方法是用鼠标双击要运行的文件名,或在桌面上双击快捷图标;在 DOS环境下进入到 TC 子目录,用命令方式运行 TC.EXE 程序。进入 TC 环境后屏幕上显示出 TC 环境的主画面。退出 TC 环境,可在FILE菜单下选择QIUT菜单项,或用热键,计算机返回到操作系统的控制下。在程序开发的过程中,有时需要返回到操作系统界面下观察程序的运行情况,但是又要保存运行的TC 环境,操作方法是:选择File菜单下的OS shell菜单项返到 DOS 操作系统界面,用EXIT命令

3、可重新进入 TC 环境;用+键返到 WINDOWS 界面,TC 环境缩小为屏幕下方任务条上的一图标,用鼠标单击该图标重新进入 TC 环境。注意此时是返到操作系统,TC 环境没有真正退出,如果此时再次运行 TC.EXE 文件,刚刚是返到 WINDOWS 环境时,会重新翻开一个 TC 窗口,返到 DOS 环境时会给出一个错误提示:Program too big to fit in memory,这是因为 DOS 操作系统只管理 640K 的内存,放不下两个 TC环境。WINDOWS 操作系统对 TC 环境是作为一个窗口进行管理的,因此 WINDOWS 窗口的一些属性也是有效的。从 TC 环境返回

4、WINDOWS 系统时会出现一个快捷菜单在任务条的 TC 图标上单击鼠标右键也可以出现快捷菜单,选择属性菜单项,屏幕出现一个名为TC 属性的窗口,在该窗口里选择屏幕一页,在用法一项里选中屏幕单项选择钮,单击应用按钮,关闭TC 属性的窗口,TC 环境以 WINDOWS 窗口形式出现。在窗口上方出现工具条,可以对窗口进行定制,注意全屏幕和中文两个工具钮的作用。TC 环境下的Options菜单下可对 TC 环境进行设置,初学者要了解Directories的作用,一般不要改变系统的其它设置。关于Directories各项的作用和设置参阅本书关于 TC 环境的介绍,学会改变输出文件的目录。3运行演示程序

5、在 TC 目录下有一个名为BGIDEMO.C的源程序,这本是为 TC 图形函数提供的演示程序,运行这个演示程序。在File菜单下选Load项,在屏幕出现的Load File Name窗口里输入BGIDEMO.C,该程序被装入编辑窗口,按键,程序被编译、连接并运行。注意运行此程序需要图形库文件,一般被装在 TC目录下,没有这个图形库文件就不能运行图形演示程序。4编写自己的第一个程序按键盘键,激活编辑窗口,录入如下 C 源程序:main()printf(This is a C Programn)printf(I am a studentn);按键,编译、连接、运行程序。屏幕出现错误提示:state

6、ment missing;in function main通过提示,可以知道上面程序第二行的最后漏敲一个分号,改正后程序运行。按+键观察输出结果。按键,程序存入硬盘,文件名自定如:test1。通过资源管理器观察当前目录下名为 test1的几个文件,它们的扩展名分别是什么。改变Options 菜单下Directories项下的输出文件目录,用键把程序再存一次并运行。在新设定的输出目录下观察名为 test1 的文件的存储情况。用File菜单下的Write to项,把文件存在新设定的输出目录处,文件名仍为 test1。录入如下程序:main()printf(This is another C Pro

7、gramn);按键并用 test1 文件名保存,然后运行这个程序。按+键,屏幕出现刚刚操作过的几个文件的名字,将刚刚设定目录下的 test1.c 装入编辑器后运行它,我们观察到输出的仍是后来键入的程序的内容。这是因为 TC 编译系统在接收RUN命令后,对 test1.c、test1.obj、test1.exe 三个文件的建立时间进行比拟,如果扩展名为.c 的文件建立时间晚于.exe 文件,它就认为源文件进行了修改,所以对源文件重新进行编译连接,如果.exe 文件的时间晚于源文件的建立时间,就直接运行这个文件,不再重新编译连接。因为我们两次输入的程序名称都是 test1,新设定目录中存放的是第一

8、个程序的 test1.c 和第二个程序的 test1.exe,就出现了现在的情况。5分别编译、连接、运行程序Run命令是将编译、连接、运行一次完成,实际完成了三件工作,下面分别进行编译、连接和运行。用命令翻开Compile菜单,并选择Compile to object命令编译该源程序文件,然后选择Compile菜单的Link EXE file命令调用连接程序连接成可执行文件,最后用Run菜单的Run命令运行程序,用Run菜单的User screen命令查看运行结果。由于编译、连接、运行是分别进行的,所以编译系统不再对相关三个文件的建立时间进行比较,我们看到的就是编辑器里当前的程序输出结果。6编

9、写程序,实现求整数 10、20 和 35 的平均值。三、实验要求三、实验要求1学习 TC 的根本操作,编写程序。2运行程序并记录运行结果。3将源程序、目标文件、可执行文件和实验报告存在效劳器的指定文件夹中。实验二 数据类型及顺序结构一、实验目的一、实验目的 1进一步熟悉 TC 环境的使用方法。2学习 C 语言赋值语句和根本输入输出函数的使用。3编写顺序结构程序并运行。4了解数据类型在程序设计语言中的意义。二、实验内容二、实验内容1编程序,输出如以下图形:*2编写程序,实现下面的输出格式和结果(表示空格):a=5,b=7,a-b=-2,a/b=71%c1=COMPUTER,c2=COMP,c3=

10、COMP s=3.11900e+002,t=-3.12e+0013编写程序,输入变量 x 值,输出变量 y 的值,并分析输出结果。y=2.4*x-1/2 y=x%2/5-x y=x 10&x=10|xb)&(ac)if(bc)printf(min=%dn,b);elseprintf(min=%dn,c);if(ab)&(ac)printf(min=%dn,a);程序中包含有一些错误,按下述步骤进行调试。设置观测变量。按键,屏幕弹出Add watch窗口,在窗口中可输入要观察的变量或表达式,此处输入 a,重复以上操作并分别输入 b、c,在屏幕下方的message窗口显示变量名 a、b、c,且变量

11、名的后面有提示,如 a 的后面是 undefined symbol a,这是因为程序没有运行,变量没有登记,所以 TC环境不知道 a 是什么。单步执行程序。按键,屏幕上半部Edit窗口中的程序第一行程序的文字背景色变为兰色,表示此语句将被执行。连续按键,兰色条一句句下移。通过单步执行发现程序中的错误。当单步执行到 scanf()函数一句时,屏幕自动切换到 DOS 窗口,等待用户的输入,假定我们输入1 2 3,变量 a、b、c 接受后应在屏幕信息窗口显示出来,但是此时我们看到的却不是我们输入的数据。这时我们就要检查程序。发现在调用 scanf()函数中变量名前面没有取地址运算符&。我们输入的数据

12、没有正确存入到变量中。经改正后再单步运行,变量a、b、c 的值被正确输入。继续单步执行,程序正确找到最小值并输出。通过充分测试发现程序中的错误。虽然程序可以运行,并不能说程序就是正确的,因为编译系统检查程序没有语法错误就可运行了,但是编译系统不能发现程序中的逻辑错误。一个程序必须通过严格的测试,把可能存在的错误都找出来并改正。关于如何进行程序测试不在本书的讲述范围,此处仅对此例进行测试的一些原那么进行介绍。刚刚给出的输入是变量 a 为最小值,且 a、b、c 都不相等的情况,可能的合理输入还有:a 为最小值且 a、b、c 相等,a 为最小值且 b、c 相等,b 为最小值且 a、b、c 互不相等,

13、b 为最小值且 a、c 相等,等等。严格说,在调试过程中对这些可能的情况都要进行测试,才能保证软件的质量。所以程序的调试、测试是一项非常烦琐的工作,也是非常重要的工作。对于初学者来说应该建立良好的习惯,在调试程序的时候,应该尽可能考虑到程序运行时各种可能,设计相应的用例。我们再次运行程序,输入为2,1,3,程序输出却是min=2。用单步执行的方法,马上发现变量a、b、c 的值是不对的,原因是程序要求输入数据的分隔符是 还允许使用回车或键。改正输入后,程序没有输出,还是用单步执行的方法,监视程序的执行过程,发现程序中条件设计有误,经过改正的程序如下:main()int a,b,c;scanf(%

14、d%d%d,&a,&b,&c);if(ab)&(ac)printf(min=%dn,a)else if(ba)&(bc)printf(min=%dn,b);else if(ca)&(cb)printf(min=%dn,c);else printf(No find minimumn);上述程序是按在三个数中仅有一个最小值时才称其为最小值进行设计的。另外,注意程序的书写格式,一定要采用缩进格式,即不同层次分支的语句左起的空格不同,这样可以有效地提高程序的可读性。2编写程序,求解以下分段函数:3 某托儿所收 2 岁到 6 岁的孩子,2 岁、3 岁孩子进小班 Lower class;4 岁孩子进中班

15、Middleclass;5 岁、6 岁孩子进大班Higher class。编写程序用 switch 语句,输入孩子年龄,输出年龄及进入的班号。如:输入:3,输出:age:3,enter Lower class。三、实验要求三、实验要求1复习关系表达式、逻辑表达式和 if 语句、switch 语句。2学习程序的调试方法。3编写程序,运行程序并记录运行结果 4将源程序、目标文件、可执行文件和实验报告存在软盘上。四、选做题四、选做题 1自守数是其平方后尾数等于该数自身的自然数。例如:25*25=625 76*76=5776任意输入一个自然数,判断是否自守数并输出:如:25 yes 25*25=625

16、 11 no 11*11=121 2输入月号,输出月份的英文名称。实验四 循环结构程序设计一、实验目的一、实验目的 1学习循环语句 for、while 和 do-while 语句的使用方法。2学习用循环语句实现各种算法,例如穷举法、迭代法等。3进一步熟悉 TC 集成环境的使用方法。二、实验内容二、实验内容 1以下程序计算 SUM 的值。调试该程序,使之能正确地计算 SUM。写出调试过程。计算公式如下:main()int t,s,i,n;scanf(%d,&n);for(i=1;i=n;i+)t=1/i;s=s+t;printf(s=%fn,s);在调试过程中,用单步执行的方法观察变量 s 和

17、t 的值的变化,找到程序中存在的问题,加以改正。2下面程序的功能是计算 n!。main()int i,n,s=1;printf(Please enter n:);scanf(%d,&n);for(i=1;i=n;i+)s=s*i;printf(%d!=%d,n,s);首次运行先输入 n=4,输出结果为 4!=24,这时正确的。为了检验程序的正确性,再输入 n=10,输出为 10!=24320,这显然是错误的。为了找到程序的错误,可以通过单步执行来观察变量的变化。这次我们在 for 循环体中增加一条输出语句,把变量 s 每次的运算结果显示出来。显示的结果是:s=1s=2s=6s=24s=120s

18、=720s=5040s=-25216s=-30336s=24320运算过程中居然出现的负值,从显示看出 s=5040 是 7!,再乘以 8 应是 40320,实际却是一个负数。分析产生这种现象的原因,把程序改正过来,再用 n=20 进行实验,分析所得到的结果。2北京市体育彩票采用整数 1、2、3、36 表示 36 种体育运动,一张彩票可选择 7 种运动。编写程序,选择一张彩票的号码,使得这张彩票的7 个号码之和是 105 且相邻两个号码之差按顺序依次是 1、2、3、4、5、6。如果第一个号码是 1,那么后续号码应是 2、4、7、11、16、22。3 编写程序实现输入整数 n,输出如下所示由数字

19、组成的菱形。图中 n=511 2 11 2 3 2 11 2 3 4 3 2 11 2 3 4 5 4 3 2 11 2 3 4 3 2 11 2 3 2 11 2 11三、实验要求三、实验要求1复习 for、while、do-while 语句和 continue、break 语句。2在程序调试中,要实现准备充分的测试用例。3编写程序,运行程序并记录运行结果。注意程序的书写格式。4将源程序、目标文件、可执行文件和实验报告存在效劳器的指定文件夹中。四、选做题四、选做题2001 年 1 月 1 日是星期一,编写程序,在屏幕上输出 2000 年的年历。关于闰年的计算方法:如果某年的年号能被 400

20、除尽,或能被 4 除尽但不能被 100 除尽,那么这一年就是闰年。实验五 数组一、实验目的一、实验目的1掌握数组的定义、赋值和输入输出的方法。2学习用数组实现相关的算法如排序、求最大和最小值、对有序数组的插入等。2、熟悉 TC 集成环境的调试数组的方法。二、实验内容二、实验内容1调试以下程序,使之具有如下功能:输入10 个整数,按每行3 个数输出这些整数,最后输出10 个整数的平均值。写出调试过程。main()int i,n,a10,av;for(i=0;in;i+)scanf(%d,ai);for(i=0;in;i+)printf(%d,ai);if(i%3=0)printf(n);for(

21、i=0;i!=n;i+)av+=ai;printf(av=%fn,av);上面给出的程序是完全可以运行的,但是运行结果是完全错误的。调试时请注意变量的初值问题、输出格式问题等。请使用前面实验所掌握的调试工具,判断程序中的错误并改正。在程序运行过程中,可以使用+键终止程序的运行,返回到 TC 环境。2编写程序,任意输入 10 个整数的数列,先将整数按照从大到小的顺序进行排序,然后输入一个整数插入到数列中,使数列保持从大到小的顺序。3输入 44 的数组,编写程序实现:求出对角线上各元素的和;求出对角线上行、列下标均为偶数的各元素的积;找出对角线上其值最大的元素和它在数组中的位置。三、实验要求三、实

22、验要求1复习数组的定义、引用和相关算法的程序设计。2编写程序,运行程序并记录运行结果。3将源程序、目标文件、可执行文件和实验报告存在软盘上。四、选做题四、选做题1设某班 50 人,写一程序统计某一单科成绩各分数段的分布人数,每人的成绩随机输入,并要求按下面格式输出统计结果;表示实际分布人数0-39 40-49 50-59 90-100 2有一个 n 行 m 列的由整数组成的矩阵,请对矩阵中的元素重新进行排列,使得同行元素中右边的元素大于左边的元素,同列元素中下边的元素大于上边的元素。实验六 字符数据处理一、实验目的一、实验目的1掌握 C 语言中字符数组和字符串处理函数的使用。2掌握在字符串中删

23、除和插入字符的方法。3熟悉 TC 集成环境的调试字符串程序的方法。二、实验内容二、实验内容1调试以下程序,使之具有如下功能:任意输入两个字符串(如:abc 123和china),并存放在a,b 两个数组中。然后把较短的字符串放在 a 数组,较长的字符串放在 b 数组。并输出。main()char a10,b10;int c,d,k;scanf(%s,&a);scanf(%s,&b);printf(a=%s,b=%sn,a,b);c=strlen(a);d=strlen(b);if(cd)for(k=0;kd;k+)ch=ak;ak=bk;bk=ch;printf(a=%sn,a);printf

24、(b=%sn,b);程序中的 strlen 是库函数,功能是求字符串的长度,它的原型保存在头文件string.h中。调试时注意库函数的调用方法,不同的字符串输入方法,通过错误提示发现程序中的错误。2编写程序,输入假设干个字符串,求出每个字符串的长度,并打印最长一个字符串的内容。以stop作为输入的最后一个字符串。3编写程序,输入任意一个含有空格的字符串(至少 10 个字符),删除指定位置的字符后输出该字符串。如:输入BEIJING123和删除位置 3,那么输出:BEIING123。三、实验要求三、实验要求1复习字符串处理函数和字符数组的使用、库函数的调用方法。2编写程序,运行程序并记录运行结果

25、。3将源程序、目标文件、可执行文件和实验报告存在软盘上。四、选做题四、选做题1编写程序,输入字符串 s1 和 s2 以及插入位置 f,在字符串 s1中的指定位置 f 处插入字符串 s2。如:输入BEIJING、123和位置 3,那么输出:BEI123JING123。2编写程序,将输入的两个字符串进行合并,合并后的字符串中的字符按照其ASCII 码从小到大的顺序排序,在合并后的字符串中相同的字符只出现一次。实验七 函数(1)一、实验目的一、实验目的1学习 C 语言中函数的定义和调用方法。2掌握通过参数在函数间传递数据的方法。3熟悉 TC 集成环境对包含函数调用的程序的调试方法。二、实验内容二、实

26、验内容1 调试以下程序,使之具有如下功能:fun 函数是一个判断整数是否为素数的函数,使用该函数求 1000以内的素数平均值。写出调试过程。#include math.h main()int a=0,k;/*a 保存素数之和*/float av;/*av 保存 1000 以内素数的平均值*/for(k=2;k=1000;k+)if(fun(k)/*判断 k 是否为素数*/a+=k;av=a/1000;printf(av=%fn,av);fun(int n)/*判断输入的整数是否为素数*/int i,y=0;for(i=2;in;i+)if(n%i=0)y=1;else y=0;return y

27、;此题调试的重点是如何判断一个数是否为素数。根据素数的定义,一个正整数只能被 1 和它本身整除,这个数是素数。调试中采用 TC 环境提供单步执行功能时,注意热键和的区别。对于一个大型程序,如果仅需要对程序中的某一局部单步执行时,可设置一些断点,用Run命令执行程序到断点处,然后再单步执行程序。通过本例说明这样调试程序的方法。在程序被运行前,将屏幕光标移到fun 函数的 for 循环一句处,按+键,该句背景色变为红色;用Run命令运行程序,程序执行到此处暂停执行,背景色为淡兰色,再用或单步执行下面的程序;当不需要单步执行时,使用Run命令可以连续执行程序,当程序再次执行到断点处又会停下等待用户的

28、指令。将屏幕光标移到已设断点处,再按+键,可以取消断点。2编写一个求水仙花数的函数,求 3 位正整数的全部水仙花数中的次大值。所谓水仙花数是指三位整数的各位上的数字的立方和等于该整数本身。例如:153 就是一个水仙花数:153=13+53+333编写一个函数,对输入的整数k 输出它的全部素数因子。例如:当k126 时,素数因子为:2,3,3,7。要求按如下格式输出:126=2*3*3*7。三、实验要求三、实验要求1复习函数的定义和调用方法。2学习使用设置断点的方法调试程序。3编写程序,运行程序并记录运行结果。4将源程序、目标文件、可执行文件和实验报告存在软盘上。四、选做题四、选做题1任意输入一

29、个 4 位自然数,调用函数输出该自然数的各位数字组成的最大数。2某人购置的体育彩票猜中了 4 个号码,这 4 个号码按照从大到小的顺序组成一个数字可被 11 整除,将其颠倒过来也可被 11 整除,编写函数求符合这样条件的 4 个号码。关于体育彩票号码的规那么见实验四;可被 11 整除颠倒过来也可被 11 整除的正整数例如 341,它可被 11 整除,颠倒过来 143 也可被 11 整除。实验八 函数(2)一、实验目的一、实验目的1掌握含多个源文件的程序的编译、连接和调试运行的方法2学习递归程序设计,掌握递归函数的编写规律。3熟悉 TC 集成环境的调试函数程序的方法二、实验内容二、实验内容1、编

30、写两个函数,其功能分别为:求 N 个整数的次大值和次小值 求两个整数的最大公约数和最小公倍数输入 10 个整数,调用函数求它们的次大值和次小值,及次大值和次小值的最大公约数和最小公倍数。要求:这两个函数和主函数分属 3 个文件。求最大公约数和最小公倍数的方法以 12 和 8 为例:辗转相除法:两数相除,假设不能整除,那么以除数作为被除数,余数作为除数,继续相除,直到余数为 0 时,当前除数就是最大公约数。而原来两个数的积除以最大公约数的商就是最小公倍数。12 8 12%8 的余数为 4 8%4 的余数为 0那么 4 为最大公约数,12*8/4 为最小公倍数。相减法:两个数中的大数减小数,其差与

31、减数再进行大数减小数,直到差与减数相等为止,此时的差或减数就是最大公约数。而原来两个数的积除以最大公约数的商就是最小公倍数。12 8 12-8=4 8-4=4那么 4 为最大公约数,12*8/4 为最小公倍数。假定保存主函数的文件名是file1.c,保存求次大值和次小值函数的文件名是file2.c,保存求最大公约数和最小公倍数函数的文件名是file3.c。现在再编辑一个文件,它的内容如下:保存这个文件为find.prj。这是一个工程文件,表示文件中指定的几个函数将连接为一个名为find.exe的可执行文件。我们要将工程文件名通知 TC 环境,按键,选择Project菜单的ProjectName

32、选项,在Project Name窗口输入工程文件名。编译系统这时将根据工程文件指出的源文件名分别进行编译,然后把编译后的目标文件.obj 文件连接成一个可执行文件。2用递归的方法求下面函数 f(x)的值:f(x,n)=n 层根号设 n=5,x=1003编写一个递归函数,实现将任意的十进制正整数转换为八进制数。三、实验要求三、实验要求1复习递归程序设计和多文件程序的编写和调试方法2编写程序,运行程序并记录运行结果。3将源程序、目标文件、可执行文件和实验报告存在软盘上。四、选做题四、选做题1编写一个递归函数,实现将任意的正整数按反序输出。例如,输入 12345,输出 54321。2按下述递归定义编

33、写一个计算阿克曼函数的递归函数:实验九 指针(1)一、实验目的一、实验目的1掌握指针变量的定义与引用。2掌握指针与变量、指针与数组的关系。3掌握用数组指针作为函数参数的方法。4熟悉 TC 集成环境的调试指针程序的方法。二、实验内容二、实验内容以下均用指针方法编程:1.调试以下程序,使之具有如下功能:用指针法输入 12 个数,然后按每行 4 个数输出。写出调试过程。main()int j,k,a12,*p;for(j=0;j12;j+)scanf(%d,p+);for(j=0;j12;j+)printf(%d,*p+);if(j%4=0)printf(n);调试此程序时将 a 设置为一个watc

34、h,数组 a 所有元素的值在一行显示出来。调试时注意指针变量指向哪个目标变量。2.在主函数中任意输入 10 个数存入一个数组,然后按照从小到大的顺序输出这 10 个数,要求数组中元素按照输入时的顺序不能改变位置。3.自己编写一个比拟两个字符串 s 和 t 大小的函数 strcomp(s,t),要求 s 小于 t 时返回-1,s 等于t时返回 0,s 大于 t 时返回 1。在主函数中任意输入 4 个字符串,利用该函数求最小字符串。三、实验要求三、实验要求1复习指针的定义与使用方法。2编写程序,运行程序并记录运行结果。3将源程序、目标文件、可执行文件和实验报告存在效劳器的指定文件夹。四、选做题四、

35、选做题1在主函数中任意输入 9 个数,调用函数求最大值和最小值,在主函数中按每行 3 个数的形式输出,其中最大值出现在第一行末尾,最小值出现在第 3 行的开头。2请编程读入一个字符串,并检查其是否为回文即正读和反读都是一样的。例如:读入:MADA M I M ADAM.输出:YES读入:ABCDBA.输出:NO实验十 指针(2)一、实验目的一、实验目的 1掌握 C 语言中函数指针的使用方法。2掌握 C 语言中指针数组的使用方法。3熟悉 TC 集成环境的调试指针程序的方法。二、实验内容二、实验内容 1调试以下程序,使之具有如下功能:任意输入 2 个数,调用两个函数分别求:2 个数的和,2 个数交

36、换值。要求用函数指针调用这两个函数,结果在主函数中输出。main()int a,b,c,(*p)();scanf(%d,%d,&a,&b);p=sum;*p(a,b,c);p=swap;*p(a,b);printf(sum=%dn,c);printf(a=%d,b=%dn,a,b);sum(int a,int b,int c)c=a+b;swap(int a;int b)int t;t=a;a=b;b=t;调试程序时注意参数传递的是数值还是地址。2输入一个 3 位数,计算该数各位上的数字之和,如果在1,12之内,那么输出与和数相对应的月份的英文名称,否那么输出*。例如:输入:123 输出:1+

37、2+3=6 June输入:139 输出:1+3+9=13*用指针数组记录各月份英文单词的首地址。3任意输入 5 个字符串,调用函数按从大到小顺序对字符串进行排序,在主函数中输出排序结果。三、实验要求三、实验要求1复习函数指针和指针数组的使用方法。2编写程序,运行程序并记录运行结果。3将源程序、目标文件、可执行文件和实验报告存在效劳器的指定文件夹中。四、选做题四、选做题1对数组 A 中的 N0N100个整数从小到大进行连续编号,要求不能改变数组 A 中元素的顺序,且相同的整数要具有相同的编号。例如:数组是 A=(5,3,4,7,3,5,6)那么输出为:(3,1,2,5,1,3,4)2将一个数的数

38、码倒过来所得到的新数,叫作原数的反序数,如果一个数等于它的反序数,那么称它为对称数。例如十进制数 121 就是一个十进制的对称数。编写程序,采用递归算法求不超过1993 的最大的二进制的对称数。实验十一 结构体一、实验目的一、实验目的1掌握 C 语言中结构体类型的定义和结构体变量的定义和引用。2掌握用结构指针传递结构数据的方法。3熟悉 TC 集成环境的调试结构程序的方法二、实验内容二、实验内容1设计一个保存学生情况的结构,学生情况包括姓名、学号、年龄。输入5 个学生的情况,输出学生的平均年龄和年龄最小的学生的情况。要求输入和输出分别编写独立的输入函数 input()和输出函数output()。

39、2使用结构数组输入 10 本书的名称和单价,调用函数按照书名的字母顺序序进行排序,在主函数输出排序结果。3建立一个有5 个结点的单向链表,每个结点包含姓名、年龄和工资。编写两个函数,一个用于建立链表,另一个用来输出链表。三、实验要求三、实验要求1复习结构体类型的定义,结构体变量、数组的定义和使用方法。2复习结构指针及其应用,如链表。3编写程序,运行程序并记录运行结果。4将源程序、目标文件、可执行文件和实验报告存在效劳器的指定文件夹中。四、选做题四、选做题1在上述第 3 题的根底上,编写插入结点的函数,在指定位置插入一个新结点。2在上述第 3 题的根底上,编写删除结点的函数,在指定位置删除一个结

40、点。实验十二 文件一、实验目的一、实验目的1掌握 C 语言中文件和文件指针的概念2掌握 C 语言中文件的翻开与关闭及各种文件函数的使用方法。3熟悉 TC 集成环境的调试文件程序的方法二、实验内容二、实验内容1编写程序,输入一个文本文件名,输出该文本文件中的每一个字符及其所对应的ASCII 码。例如文件的内容是 Beijing,那么输出:B(66)e(101)i(105)j(106)i(105)n(110)g(103)。2编写程序完成如下功能:输入 5 个学生的信息:学号6 位整数、姓名6 个字符、3 门课的成绩3 位整数1 位小数。计算每个学生的平均成绩3 位整数 2 位小数,将所有数据写入文

41、件 STU1.DAT;从 STU1.DAT 文件中读入学生数据,按平均成绩从高到低排序后写入文件 STU2.DAT;按照输入学生的学号,在 STU2.DAT 文件中查找该学生,找到以后输出该学生的所有数据,如果文件中没有输入的学号,给出相应的提示信息。3用编辑软件建立一个名为d1.txt的文本文件存入磁盘,文件中有 18 个数。从磁盘上读入该文件,并用文件中的前 9 个数和后 9 个数分别作为两个 3*3 矩阵的元素。求这两个矩阵的和,并把结果按每行 3个数据写入文本文件d2.txt。用 DOS 命令 TYPE 显示 d2.txt。三、实验要求三、实验要求1复习文件的读写方法。2编写程序,运行程序并记录运行结果。3源程序、目标文件、可执行文件和实验报告存在效劳器的指定文件夹中。四、选做题四、选做题1建立两个由有序的整数组成的二进制文件 f1 和 f2,然后将它们合并为一个新的有序文件 f3。2 编写程序,功能是从磁盘上读入一个文本文件,将文件内容显示在屏幕上,每一行的前面显示行号。2021 年最新整理出品,精品文档,欢迎大家使用。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 工作报告

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁