




已阅读5页,还剩20页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据结构实验指导书C语言基础 姓名: 学号:2008091 班级:商务08 班指导教师:石林山东建筑大学商学院电子商务教研室目录:实验一 C源程序的编辑、编译、调试和运行 3实验二 基本输入/输出函数和运算符、表达式 5实验三 顺序结构、选择结构程序设计 8实验四 循环结构程序设计 11实验五 数组的应用 . 16实验六 函数的应用 19实验七 指针的应用 21实验八 结构体的应用 23附录一 24实验一C源程序的编辑、编译、调试和运行一、实验目的及任务:1、熟悉C语言运行环境TC3.0和VC+。2、掌握C语言程序的书写格式和C语言程序的结构。3、掌握C语言上机步骤,了解运行一个C程序的方法。二、实验环境TC编程环境;VC+编程环境;主机操作系统为Windows2000或Windows XP;三、预备知识要深入掌握TC编译环境,熟悉各个命令;掌握VC+编译环境。四、 实验步骤1、C语言上机步骤:(1)安装TC3.0。(2)进入系统。在C盘或其他盘上找到TC或TURBOC2,然后双击其图标打开文件夹,在TC/BIN/中找到TC.EXT并双击即可。然后进行编辑源程序-编译-连接-执行程序-显示结果(3)常用命令编辑切换(F6,编译(F9),运行(CTRL+F9),显示结果(ALT+F5)其它常用命令见附录一.2、使用VC+建立C源程序(1)打开VC+编译软件,通过“file/new/win32 consloe application”建立一个空工程,输入工程名字;(2)再运行”file/new/c+ source file”建立一个C源文件,输入文件名;(3)编辑源程序代码3、有下面的C程序,目的是求两个由键盘输入的数的乘积。试编译运行,查看结果。25/*exl.c*/#include void main() int prodct(int a ,int b );int x,y,pscanf(%d,%d,&x,&y) p=prodct(x,y) printf(The product is :%d,p)int prodct(int a ,int b )int cc=a*breturn c 五、 实验报告内容请编辑并运行上述程序。1)静态地检查上述程序,改正程序中的错误2)在编辑状态下照原样键入上述程序.3)编译并运行上述程序,记下所给出的出错信息 4)按照事先静态检查后所改正的情况,进行纠错.5)再编译执行纠错后的程序,如还有错误,再编辑改正,直到不出现语法错误为止6)下面给出6组测试用例,你认为哪几组较好,为什么(1)0, 0(2)0, 99(3)20,50 (4)33000,20(5)-5,-2(6)-5,2 要测试出上述程序中所有错误,你认为应当用几组测试用例 六、思考题1、有哪些方法可以进入TC编译环境?2、编写一个程序,要求输入圆的半径,计算圆的周长和面积并输出。 实验二 基本输入/输出函数和运算符、表达式一、实验目的及任务:1、掌握C语言程序输入,输出的方法和格式。2、学会有关C语言的有关运算符,以及包含这些运算符的表达式,特别是是+和- -运算符的使用。3、掌握C语言表达式的运行规则。4、进一步熟悉C程序的编辑环境。二、实验环境TC或者VC+编程环境;主机操作系统为Windows2000或Windows XP;三、 预备知识要深入理解输入输出函数的格式和用法,掌握运算符和表达式的概念和应用。四、 实验步骤1、输入并编辑下面的程序main()int a,b; float c,d; long e,f; unsigned int u,v; char c1,c2; scanf(%d,%d,&a,&b); scanf(%f,%f,&c,&d); scanf(%ld,%ld,e,f); scanf(%o,%o,&u,&v); scanf(%c,%c,c1,c2); printf(n); printf(a=%7d,b=%7dn,a,b); printf(c=%10.2f,d=%10.2fn,c,d); printf(e=17ld,f=%17ldn,e,f); printf(u=%o,d=%on,u,v); printf(c1=%c,d=%cn,c1,c2); (1)这个程序有语法错误吗,为什么? (2)调试上述程序无语法错误后,用下面的测试数据,对程序进行测试: a=123,b=456,c=17.6,d=71837.65,e=70000,f=2174506,u=62000,v=58765,c1=a,c2=b 分析运行结果.特别注意输入c1,c2的值是什么,什么原因? (3)将输入e和f的语句改为:scanf(%d,%d,&e,&f);再用上述测试数据测试并分析结果. (4)将输入u,v的语句改为: scanf(%d,%d,&u,&v);再用上述测试数据测试并分析结果. 2、编写一个C语言程序,测试下列各表达式 i , j i + 1, j + 1 i + + , j + + + + i, + + j i + + + + + j + + i + + + + + j + + 要求在各表达式中i 和j都分别有相同的初值.在实验中注意下列问题: (1) 哪些表达式是错误的,为什么?(2) 理解+,+,+i,i+的意义和优先级别。3、下面的程序试图计算由键盘输入的任意两个整数的平均值: #include main() int x,y,a; scanf(%x,%y,&x,&y);a=(x+y)/2; printf(The average is :a); 调试无语法错误后,分别使用下列测试用例对上述程序进行测试:2,6;1, 3;-2,-6;-1,-3;-2,6;-1,3;1,0;1,6 ;32800,33000;-32800,33000;(1)分析上述哪几组测试用例较好,通过测试,你发现程序有什么错误了吗?若有错误,请指出错误原因。 4、输入以下程序 main() int j,k,m,n; k=8; j=10; m=k+; n=+j; printf(%d,%d,%d,%d,k,j,m,n); (1)运行程序,观察结果(2)分析+在变量之前和在变量之后的不同点 五、 实验报告内容 完成上述题目及思考题内容。六、思考题1、操作符sizeof用以测试一个数据或类型所占用的存储空间的字节数,请编写一个程序,测试各基本数据类型所占用的存储空间大小。 实验三 顺序结构、选择结构程序设计一、实验目的及任务:1、了解条件与程序流程的关系。2、了解C语句表示逻辑量的方法(以0代表假以1代表真)。3、学会正确使用逻辑运算符和逻辑表达式。4、熟练掌握if语句和switch语句。二、实验环境TC或者VC+编程环境;主机操作系统为Windows2000或Windows XP;三、 预备知识要深入理解顺序结构及选择结构的特点,掌握各自的语句实现。四、 实验步骤1、有如下程序段:if (a1&b= =0) x=x/a; if(a=2|x1) x=x+1; 要求增加一些输入语句和输出语句,以便使上述程序能在不同的a,b和x值下运行,并且能观察程序流程经过(覆盖)了哪些语句,哪些分支及哪些路径。 记下分别使用下列各组数据运行时的操作流程:(1) a=1,b=1,x=1; (2) a=1,b=1,x=2; (3) a=3,b=0,x=1; (4) a=2,b=1,x=4; (5) a=2,b=1,x=1; (6) a=1,b=0,x=2; (7) a=2,b=1,x=1; (8) a=3,b=0,x=2. 2、已知三个数a,b,c,找出最大值放于max中。#include stdio.h main() int a,b,c,max; /*定义四个整型变量*/ scanf(a=%d,b=%d,c=%d,&a,&b,&c); if (a=b) max=a; /*a=b*/ else max=b; /*amax) if(c=max)max=c; /*c是最大值*/ printf(max=%d,max); 实验步骤:若输入下列数据,分析程序的执行顺序并写出运行结果(1)a=1,b=2,c=3 (2)a=2,b=1,c=3 (3)a=3,b=2,c=1 (4)a=3,b=1,c=2 (5)a=3,b=3,c=2 (6)a=2,b=1,c=2 3、输入某学生的成绩,经处理后给出学生的等级,等级分类如下:90分以上(包括90): A80至90分(包括80):B70至80分(包括70):C60至70分(包括60):D60分以下: E 输入测试数据,同方法一一样调试程序并写出结果。五、 实验报告内容完成上述题目及思考题内容。六、思考题1、输入4个整数,要求按由小到大的顺序输出。实验四 循环结构程序设计一、实验目的及任务:1,掌握在程序设计条件型循环结构时,如何正确地设定循环条件,以及如何控制循环的次数。2,了解条件型循环结构的基本测试方法。3,掌握如何正确地控制计数型循环结构的次数。4,了解对计数型循环结构进行测试的基本方法。5,了解在嵌套循环结构中,提高程序效率的方法。二、实验环境TC或者VC+编程环境;主机操作系统为Windows2000或Windows XP;三、 预备知识要深入理解循环程序结构的特点,掌握其各种方式的语句实现。四、 实验步骤1、(1)下面是一个计算e的近似值(使误差小于给定的)的程序main()double e=1.0,x=1.0,y,detax; int i=1;printf(n please input enter a error:); scanf(%lf,&detax);y=1/x; while(y=detax) x=x*i; y=1/x; e=e+y; +i; printf(%12.10lf,e); (2)实验步骤 1)阅读上面的程序,写出程序所依据的计算公式。 2)当输入的detax各是什么值时,能分别使程序按下面的要求运行: 不进入循环 ; 只循环一次 ;只循环两次 ; 进入死循环(程序将永远循环下去) 为了能知道程序循环了多少次,应该在程序中增加一条什么样的语句? 3)原程序中while语句中的y=detax,分别换成ydetax,y=detax,y detax,Y= detax,观察程序运行将会有什么变化。 4)把原程序中while语句之前的y=1/x语句去掉,观察程序的运行将会发生什么样的变化。 5)若把原程序中的+i换成i+,观察程序的运行发生了什么变化 6)把原程序中的while结构改写成dowhile结构,再分别按上述的2),3)两步进行实验。 2、求5! 3、求和s=1!+2!+3!4、求和s=1!+3!+5! 5、求和s= 3+33+333 6、有一数列:2/1,3/2,5/3,8/5,求出这个数列的前10项之和.7、打印500以内的水仙花数。水仙花数是一个三位数,其各位数立方和等于该数本身。8、用牛顿迭代求方程2x3-4x2+3x-6=0在1.0附近的根。9、打印下列图案* * * * 10.断m是否是素数。五、 实验报告内容完成上述题目及思考题内容。六、思考题1、求和1!+2!+3!+4!+20!。实验五 数组的应用一、实验目的及任务:1、掌握数组定义的规则。2、掌握C语言数组的基本用法。3、掌握一维数组的定义,赋值和输入输出的方法。4、掌握字符数组的使用。5、掌握二维数组的定义,赋值和输入输出的方法。二、实验环境TC或者VC+编程环境;主机操作系统为Windows2000或Windows XP;三、 预备知识要深入理解数组的定义,数组的功能及操作特点;四、 实验步骤1、编写程序,测试下列数组的定义方式是否正确(1) main() int n;scanf(%d,&n); int an; 测试结果: (2) main() const int n=10; int an; 测试结果: (3) #include #define M 10 main() int aM; 测试结果: (4) main() int a2+2*4; 测试结果: (5) #include #define M 2 #define N 8 main() int aM+N; 通过这一实验,可以说明什么问题 2、完善并运行下面的C程序,根据运行结果,可以说明什么main( ) int num5=1,2,3,4,5;int i; for(i=0;i=5;i+) printf(%d,numi); 4、输入10个数,计算其中负数的个数。#include main( )char data10; int i,sum=0;for(i=0;i10;i+) scanf(%d,datai);if(datai的应用。二、实验环境TC编程环境;主机操作系统为Windows2000或Windows XP;三、 预备知识要深入理解结构体的定义及操作特点,能够使用结构体解决相关问题。四、 实验步骤1、要求编写程序:有4名学生,每个学生的数据包括学号,姓名,成绩,要求找出成绩最高者的姓名和成绩,上机运行程序。 五、 实验报告内容完成上述题目及思考题内容。六、思考题1、如何使用结构体指针来建立链表?附录一:TC编译环境常用热键基本操作:F10-调用主菜单F2-存盘F3-打开Alt+F9-CompileCtrl+F9-RunAlt+F5-User
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 商业综合体储藏室所有权转移协议
- 民营企业厂房租赁安全生产协议范本
- 涉及租赁房屋周边商业配套的退房协议
- 房屋委托租房协议书范本
- 农产品集中采购合作协议
- 无人振捣机轨迹规划
- 下肢深静脉血栓治疗与护理
- 2024年高考语文复习:宫苑类题材古代诗歌阅读练习题(含答案解析)
- 制造客户需求培训
- 四有好老师教师培训讲座
- 2024年福州第十一中学招聘笔试真题
- 【泉州:寒街孤影寻暖意 一抹亮色映霜花】中原地产2024年泉州楼市分析报告正式版
- 小学生反分裂课件
- 外科病房医院感染防控工作职责
- DB34∕T 3262.2-2018 普通公路养护预算 第二部分:定额
- 2025年省定远县第三批“曲阳雁归”工程公开招录50名村(社区)干部高频重点提升(共500题)附带答案详解
- 旅游学概论(李天元)课件
- 大数据技术原理与应用-林子雨版-课后习题答案(文档).文档
- 医院信息化网络安全培训
- 发电厂安全隐患排查
- 《特种设备安全管理员》考试通关题库(600题 含参考答案)
评论
0/150
提交评论