实验要求:上机实验一般经历上机前的准备(编程)、上机调试运行和实验后的总结三个步骤。
1.上机前的准备根据问题,进行分析,选择适当算法并编写程序。
上机前一定要仔细检查程序(称为静态检查)直到找不到错误(包括语法和逻辑错误)。
分析可能遇到的问题及解决的对策。
准备几组测试程序的数据和预期的正确结果,以便发现程序中可能存在的错误。
上机前没有充分的准备,到上机时临时拼凑一个错误百出的程序,宝贵的上机时间白白浪费了;如果抄写或复制一个别人编写的程序,到头来自己一无所获。
2.上机输入和编辑程序,并调试运行程序首先调用C语言集成开发环境,输入并编辑事先准备好的源程序;然后调用编译程序对源程序进行编译,查找语法错误,若存在语法错误,重新进入编辑环境,改正后再进行编译,直到通过编译,得到目标程序(扩展名为OBJ)。
下一步是调用连接程序,产生可执行程序(扩展名为EXE)。
使用预先准备的测试数据运行程序,观察是否得到预期的正确结果。
若有问题,则仔细调试,排除各种错误,直到得到正确结果。
在调试过程中,要充分利用C 语言集成开发环境提供的调试手段和工具,例如单步跟踪、设置断点、监视变量值的变化等。
整个过程应自己独立完成。
不要一点小问题就找老师,学会独立思考,勤于分析,通过自己实践得到的经验用起来更加得心应手。
3.整理上机实验结果,写出实验报告实验结束后,要整理实验结果并认真分析和总结,根据教师要求写出实验报告。
实验报告一般包括如下内容:⑴实验内容实验题目与要求。
⑵算法说明用文字或流程图说明。
⑶程序清单⑷运行结果原始数据、相应的运行结果和必要的说明。
⑸分析与思考调试过程及调试中遇到的问题及解决办法;调试程序的心得与体会;其他算法的存在与实践等。
若最终未完成调试,要认真找出错误并分析原因等。
实验一C语言运行环境一、实验目的1.了解TC环境的组成。
2.学习TC环境的使用方法。
3.了解C语言程序从编辑、编译、连接到运行并得到运行结果的过程。
二、实验内容1.了解TC环境的组成。
开机后进入WINDOWS系统的"资源管理器",找到TC环境所在的文件夹。
查看在TC目录下的以字母TC开头的文件,是否包括了TC.EXE、TCC.EXE、TLINK.EXE、TCCONFIG.TC等文件;查看INCLUDE、LIB两个子目录下的文件。
复习这些文件夹的作用。
2.进入、退出和定制TC环境。
运行TC目录下的TC.EXE文件,就可进入TC环境。
在WINDOWS环境下运行文件的方法是用鼠标双击要运行的文件名,或在桌面上双击快捷图标;在DOS环境下进入到TC子目录,用命令方式运行TC.EXE程序。
进入TC环境后屏幕上显示出TC环境的主画面。
退出TC环境,可在"FILE"菜单下选择"QIUT"菜单项,或用热键<Alt+X>,计算机返回到操作系统的控制下。
3.运行演示程序在TC目录下有一个名为"BGIDEMO.C"的源程序,这本是为TC图形函数提供的演示程序,运行这个演示程序。
在"File"菜单下选"Load"项,在屏幕出现的"Load File Name"窗口里输入"BGIDEMO.C",该程序被装入编辑窗口,按<Alt+R>键,程序被编译、连接并运行。
注意运行此程序需要图形库文件,一般被装在TC目录下,没有这个图形库文件就不能运行图形演示程序。
4.编写自己的第一个程序按键盘<Alt+E>键,激活编辑窗口,录入如下C源程序:main( ){ printf("This is a C Program\n")printf("I am a student\n");}按<Alt+R>键,编译、连接、运行程序。
屏幕出现错误提示:statement missing ;in function main通过提示,可以知道上面程序第二行的最后漏敲一个分号,改正后程序运行。
按<Alt>+<F5>键观察输出结果。
按<F2>键,程序存入硬盘,文件名自定(如:test1)。
通过资源管理器观察当前目录下名为test1的几个文件,它们的扩展名分别是什么。
改变"Options" 菜单下"Directories"项下的输出文件目录,用<F2>键把程序再存一次并运行。
在新设定的输出目录下观察名为test1的文件的存储情况。
用"File"菜单下的"Write to"项,把文件存在新设定的输出目录处,文件名仍为test1。
录入如下程序:main( ){ printf("This is another C Program\n");}按<F2>键并用test1文件名保存,然后运行这个程序。
按<Alt>+<F3>键,屏幕出现刚才操作过的几个文件的名字,将刚才设定目录下的test1.c 装入编辑器后运行它,我们观察到输出的仍是后来键入的程序的内容。
这是因为TC编译系统在接收"RUN"命令后,对test1.c、test1.obj、test1.exe三个文件的建立时间进行比较,如果扩展名为.c的文件建立时间晚于.exe文件,它就认为源文件进行了修改,所以对源文件重新进行编译连接,如果.exe文件的时间晚于源文件的建立时间,就直接运行这个文件,不再重新编译连接。
因为我们两次输入的程序名称都是test1,新设定目录中存放的是第一个程序的test1.c和第二个程序的test1.exe,就出现了现在的情况。
5.分别编译、连接、运行程序"Run"命令是将编译、连接、运行一次完成,实际完成了三件工作,下面分别进行编译、连接和运行。
用<ALT+C>命令打开"Compile"菜单,并选择"Compile to object"命令编译该源程序文件,然后选择"Compile"菜单的"Link EXE file"命令调用连接程序连接成可执行文件,最后用"Run"菜单的"Run"命令运行程序,用"Run"菜单的"User screen命令"查看运行结果。
由于编译、连接、运行是分别进行的,所以编译系统不再对相关三个文件的建立时间进行比较,我们看到的就是编辑器里当前的程序输出结果。
6.编写程序,实现求整数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= COMPx=31.19,y= -31.2,z=31.1900s=3.11900e+002,t= -3.12e+0013.编写程序,输入变量x值,输出变量y的值,并分析输出结果。
⑴y = 2.4 * x - 1 / 2⑵y = x % 2 / 5 - x⑶y = x > 10 && x < 100⑷y = x >= 10 || x<= 1⑸y = ( x -= x * 10 , x /= 10 )要求变量x、y是float型。
4. 调试下列程序,使之能正确输出3个整数之和及3个整数之积。
main( ){ int a,b,c;printf("Please enter 3 numbers:");scanf("%d,%d,%d",&a,&b,&c);ab=a+b;ac=a*c;printf("a+b+c=%d\n",a+b+c);printf("a*b*c=%d\n",a+c*b);}输入:40,50,60↙5.运行下述程序,分析输出结果。
main( ){ int a=10;long int b=10;float x=10.0;double y=10.0;printf("a = %d, b = %ld, x = %f, y = %lf\n",a,b,x,y);printf("a = %ld, b = %d, x = %lf, y = %f\n",a,b,x,y);printf("x = %f, x = %e, x = %g\n",x,x,x);}从此题的输出结果认识各种数据类型在内存的存储方式。
三、实验要求1.复习赋值语句和输入输出函数各种格式符的使用。
2.复习数据类型和运算符的有关概念。
3.编写程序,运行程序并记录运行结果。
4.将源程序、目标文件、可执行文件和实验报告存在软盘上。
实验三选择结构程序设计一、实验目的1.正确使用关系表达式和逻辑表达式表达条件。
2.学习分支语句if和switch的使用方法。
3.进一步熟悉TC集成环境的使用方法,学习TC环境提供的调试工具。
二、实验内容1.编写程序,使之具有如下功能:输入a、b、c三个整数,求最小值。
写出调试过程。
2.编写程序,求解下列分段函数:x (-5<x<0)y= x-1 (x=0)x+1 (0<x<10)100 其它3.某托儿所收2岁到6岁的孩子,2岁、3岁孩子进小班(Lower class);4岁孩子进中班(Middle class);5岁、6岁孩子进大班(Higher class)。
编写程序(用switch语句),输入孩子年龄,输出年龄及进入的班号。
如:输入:3,输出:age:3,enter Lower class。
三、实验要求1.复习关系表达式、逻辑表达式和if 语句、switch语句。
2.学习程序的调试方法。
3.编写程序,运行程序并记录运行结果4.将源程序、目标文件、可执行文件和实验报告存在软盘上。
四、选做题1.自守数是其平方后尾数等于该数自身的自然数。