电气c实训指导书

上传人:第*** 文档编号:60784377 上传时间:2018-11-18 格式:PDF 页数:19 大小:204.29KB
返回 下载 相关 举报
电气c实训指导书_第1页
第1页 / 共19页
电气c实训指导书_第2页
第2页 / 共19页
电气c实训指导书_第3页
第3页 / 共19页
电气c实训指导书_第4页
第4页 / 共19页
电气c实训指导书_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《电气c实训指导书》由会员分享,可在线阅读,更多相关《电气c实训指导书(19页珍藏版)》请在金锄头文库上搜索。

1、1 C C 语言程序设计语言程序设计 实训指导书实训指导书 电气电气 指导老师:指导老师: 2 2O11O11.12.15.12.15 2 C C 程序设计实训指导书程序设计实训指导书 (适用于电气专业)(适用于电气专业) C 程序设计实训是 C 程序设计课程的一个重要环节,而且也是整个教学过程中理论联 系实际不可缺少的教学环节。为加强学生对于知识掌握的广泛性、应用性和动手能力,以及对 各有关先修课程的知识进行较为全面而综合的设计练习,必须搞好 C 程序设计实训。 一、实训目标一、实训目标 强化 C 语言的各种知识,通过一系列实验,使学生获得 C 语言的相关知识及一定的实际操 作技能和用 C

2、编程的实践经验,进一步提高学生分析问题、解决问题的能力,以巩固和加深所 学的理论知识。为学生从事本行业相关工作打下比较坚实的基础。使学生获得一定的实际操作 技能和程序开发经验,进一步提高学生分析问题、解决问题的能力,增强实践技能,并培养学 生勇于动手、勤于动手、热爱本专业的思想。 二、实训要求二、实训要求 C 实验应在计算机机房进行,通过合理选择实验题目,使学生应达到以下要求: 本课题设计的基本要求: 必须提交系统分析报告,包括系统的功能分析、系统的功能模块设计 程序设计的报告:包括程序的运行环境、开发环境、程序的详细设计(包括模块之间的关系, 模块的功能、主要功能实现的程序段) 。时间够用情

3、况可以尝试。 系统的源程序,应带有详细的备注。时间够用情况可以尝试。 要求学生在实训期间,做好实训日记、以及实训所得资料、内容的整理工作。实训结束时, 写出实训报告并有实训作品。实训报告内容详略得当,要有程序及程序使用说明。 实训要在机房中计算机上完成整个程序的调试,通过实训,对 C 课程的掌握上应使学生应 达到以下要求: 1、熟悉 C 的开发环境。 2、掌握 C 中的数据类型、变量、常量、表达式和运算符的用法。 3、掌握 C 中顺序结构、选择结构、循环结构程序的编写,语句的实现。使学生养成良好的 3 编程习惯。培养分析问题,解决问题的能力。 4、掌握 C 程序结构的概念与使用方法。 5、掌握

4、数组类型的使用方法。 6、理解并掌握函数的概念和用法。 7、掌握 C 编程的技巧。 8、树立实事求是、认真工作的思想,培养严密的逻辑思维能力。 三、实训内容三、实训内容 本次实训要求必须完成两类实训任务:(1)学生对指定的 12 个实验项目进行验证与设计;(2) 学生从所给的 6 道实用题目中任意选择 5 个,自行进行编程实现。 11 指定的实验项目验证与设计指定的实验项目验证与设计( (对以下指定的对以下指定的 1212 个实验项目进行验证个实验项目进行验证) ) 1、数据类型、运算符和表达式 一、实验目的 1.熟练表达式的表示方法 2.了解表达式的运行结果 二、实验内容和步骤 用 prin

5、tf 函数来输入表达式运行结果 观察以下表达式的结果 =xx x!=y x=z-2 x=x-2 x=z x main() int x,y,a; scanf(“%x,%y, a=(x+y)/2; printf(“The average is :”a); 调试无语法错误后,分别使用下列测试用例对上述程序进行测试: (), (), (), (), (), (), (), (), (), (), 1、分析上述哪几组测试用例较好?通过测试,你发现程序有什么错误了吗?若有错误,请指出 错误原因。 、操作符 sizeof 用以测试一个数据或类型所占用的存储空间的字节数。请编写一个程序, 测试各基本数据类型所

6、占用的存储空间大小。 三、分析与讨论 如何正确地选用数据类型?(提示:给合前面做过的两个实验及书本进行讨论总结) 3、运行符与表达式 一、目的和要求 、理解常用运行符的意义。 、掌握语言表达式的运行规则。 、本实验可在学习了教材第 2.3 节后进行。 二、实验内容和步骤 、编写一个语言程序,测试下列各表达式 i , j i + 1,j + 1 5 i + + ,j + + + + i, + + j i + + + + + j + + i + + + + + j + + 要求在各表达式中 i和 j 都分别有相同的初值。在实验中注意下列问题: ()哪些表达式是错误的?为什么? ()理解,i,i的意

7、义和优先级别。 、编写一个程序,测试常用的十个运算符的优先顺序。 四、分析与讨论 分析总结运算符的优先级。 6 4、输入与输出 一、目的和要求 、掌握语言程序输入、输出的方法和格式。 、本实验可在学习教材第二章后进行。 二、实验内容与步骤 、输入并编辑下面的程序 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

8、); printf(“n”); printf(“a=%7d,b=%7dn”, printf(“c=%10.2f,d=%10.2fn”, printf(“e=17ld,f=%17ldn”, printf(“u=%o,d=%on”, printf(“c1=%c,d=%cn”, 这个程序有语法错误吗?为什么? 、调试上述程序无语法错误后,用下面的测试数据,对程序进行测试: a=123,b=456,c=17.6,d=71837.65,e=70000,f=2174506,u=62000,v=58765,c1=a,c2=b 分析运行结果。特别注意输入 c1,c2 的值是什么?什么原因? 、将输入 e 和

9、f 的语句改为: scanf(“%d,%d”, 再用上述测试数据测试并分析结果。 、将输入 u、v 的语句改为: scanf(“%d,%d”, 再用上述测试数据测试并分析结果。 、将输出 e,f的语句改为: printf(“e=%17d,f=%17dn”,e,f); 再用上述测试数据测试并分析结果。 、将输出 u、v 的语句改为: printf(“u=%u,v=%un”,u,v); 或 7 printf(“u=%d,v=%dn”,u,v); 再用上述测试数据测试并分析结果。 、请读者自己修改程序和改变数据输入的形式,分析各种情况下的输入与输出。 、在 scanf(“%c,%c”, 、验证转义字

10、符n 与 r 的意义有何不同。 三、分析与讨论 、总结在 printf 函数中可以使用的各种格式指定符,并给出样例。 、总结在 printf 函数中可以使用的各转义字符及其功能。 5、顺序程序结构程序设计 一、实验目的 1.进一步掌握 C 程序的编辑、编译、连接和运行的过程。 2.熟悉顺序结构的程序设计方法。 3.熟练使用 C 的各种表达式。 4.熟练掌握输入、输出函数的使用。 二、实验内容和步骤 1. 输入 x,y,编写程序求 z=x+|y|的值。 实验步骤与要求: (1)程序中用 scanf 函数输入 x 和 y 的值,请分析以下两个语句 scanf(“%f%f”,x,y); scanf(

11、“%f%f”, 哪一个是正确的,分别运行之,分析程序运行结果。 如果 scanf 函数改为 scanf(“%f,%f”,应该怎样输入数据。 2. 编写输入三角形的三边长 a、b、c,求三角形面积 area 的程序。 实验步骤与要求: (1)输入前要加提示语句。 (2)输出结果前要有必要的文字说明。 (3)输入一组数据 3,4,5,观察运算结果。 (4)输入另外一组数据 3,4,8,观察运算结果,分析这个运算结果是否有效。 三、问题讨论 上机各个环节所出现的错误及解决的办法 8 6、选择结构 一、实验目的 、了解条件与程序流程的关系 、了解用不同的数据使程序的流程覆盖不同的语句、分支和路径。 、

12、本实验应在学习教材第 3.2 节后进行。 二、实验内容和步骤 、题目 有如下程序段: if (a1 if(a=2|x1) x=x+1; 为了更容易明白程序的逻辑结构,我们用图 5.1 所示流程图来加以描述。 a1 ()a=1,b=1,x=2; ()a=3,b=0,x=1; ()a=2,b=1,x=4; ()a=2,b=1,x=1; ()a=1,b=0,x=2; 9 ()a=2,b=1,x=1; ()a=3,b=0,x=2。 三、分析讨论 (1)用哪一组数据就可使程序中的每个处理语句都执行一次?为了找出程序中各条处理语 句中的错误,应该使用什么样的数据对程序进行测试?请上机验证自己的结论。 (2

13、)用哪两组数据就可以使程序段中的每个分支都运行一次?这种情形与上面的讨论有何 不同?如果为了找出程序中积压分支中的错误,应该使用什么样的数据对程序进行测试?请上 机验证自己的结论。 (3)用哪两组数据就可以把判定框中的每个条件运算都进行一次?如果为了测试出判定条 件中的错误,应使用哪些数据对程序进行测试?请上机验证自己的结论。 (4)用哪四组数据才可以把各种条件的组合都检测一遍? 如果为了测试各种条件的组合 的情形,应该使用什么样的测试数据?请上机验证自己的结论。 (5)用哪四组数据才可以把起始到终止的各条路径都覆盖一次?如果为了测试出程序在不 同路径下的错误,应该使用什么样的测试数据?请上机

14、验证自己的结论。 四、进一步的实验 1 题目 从键盘上输入三个数,让它们代表三条线段的长度,请写一个判断这三条线段所组成的三角形 属于什么类型(不等边,等腰,等边或不构成三角形)的 C 程序。 2 请分别设计下列数据对自己的程序进行测试: (1)找出各条语句中的错误。 (2)找出积压分支中的错误。 (3)找出各条件中的错误。 (4)找出各种条件组合中的错误。 (5)找出各条路径中的错误。 7、 条件型循环结构 一、目的和要求 1、掌握在程序设计条件型循环结构时,如何正确地设定循环条件,以及如何控制循环的次数。 2、了解条件型循环结构的基本测试方法。 3、本实验可在学习教材 3.3 节后进行。

15、二、实验内容与步骤 1、下面是一个计算 e 的近似值(使误差小于给定的)的程序。 main() double e=1.0,x=1.0,y,detax; int i=1; printf(“n please input enter a error:”); scanf(“%lf”, y=1/x; while(y=detax) 10 x=x*I; y=1/x; e=e+y; +i; printf(“%12.10lf”,e); 2、实验步骤 (1) 、阅读上面的程序,写出程序所依据的计算公式。 (2) 、当输入的 detax 各是什么值时,能分别使程序按下面的要求运行: .不进入循环; .只循环一次;

16、.只循环两次; .进入死循环(程序将永远循环下去)。 为了能知道程序循环了多少次,应该在程序中增加一条什么样的语句? (3) 、原程序中 while 语句中的 y=detax,分别换成 ydetax,y=detax,y=3;j+ .j=1;j3;j+ .j=1;j3;j- .j=1;j1) 实验步骤与要求: (1) 根据递归公式编制计算 n 阶勒让德多项式的递归函数 p(n,x)。 (2) 编制一个主函数,由键盘输入 n,x,调用(1)中的函数计算 n 阶勒让德多项式的值。 (3) 输入(n,x)=(4,2)运行该程序。然后自定义几组数据再运行该程序。 程序调试说明: 多模块的调试除了可以采用前面实验中采用的各种调试方法以外,还可以采用“回声打印”的 调试方法。当函数之间要传递的

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

当前位置:首页 > 办公文档 > 事务文书

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号