电气C实训指导书(共20页).doc
《电气C实训指导书(共20页).doc》由会员分享,可在线阅读,更多相关《电气C实训指导书(共20页).doc(20页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上C语言程序设计实训指导书电气指导老师:2O11.12.15C程序设计实训指导书(适用于电气专业)C程序设计实训是C程序设计课程的一个重要环节,而且也是整个教学过程中理论联系实际不可缺少的教学环节。为加强学生对于知识掌握的广泛性、应用性和动手能力,以及对各有关先修课程的知识进行较为全面而综合的设计练习,必须搞好C程序设计实训。一、实训目标强化C语言的各种知识,通过一系列实验,使学生获得C语言的相关知识及一定的实际操作技能和用C 编程的实践经验,进一步提高学生分析问题、解决问题的能力,以巩固和加深所学的理论知识。为学生从事本行业相关工作打下比较坚实的基础。使学生获得一定的
2、实际操作技能和程序开发经验,进一步提高学生分析问题、解决问题的能力,增强实践技能,并培养学生勇于动手、勤于动手、热爱本专业的思想。二、实训要求C实验应在计算机机房进行,通过合理选择实验题目,使学生应达到以下要求:本课题设计的基本要求:必须提交系统分析报告,包括系统的功能分析、系统的功能模块设计程序设计的报告:包括程序的运行环境、开发环境、程序的详细设计(包括模块之间的关系,模块的功能、主要功能实现的程序段)。时间够用情况可以尝试。系统的源程序,应带有详细的备注。时间够用情况可以尝试。 要求学生在实训期间,做好实训日记、以及实训所得资料、内容的整理工作。实训结束时,写出实训报告并有实训作品。实训
3、报告内容详略得当,要有程序及程序使用说明。实训要在机房中计算机上完成整个程序的调试,通过实训,对C课程的掌握上应使学生应达到以下要求:1、熟悉C的开发环境。2、掌握C中的数据类型、变量、常量、表达式和运算符的用法。3、掌握C中顺序结构、选择结构、循环结构程序的编写,语句的实现。使学生养成良好的编程习惯。培养分析问题,解决问题的能力。4、掌握C 程序结构的概念与使用方法。5、掌握数组类型的使用方法。6、理解并掌握函数的概念和用法。7、掌握C 编程的技巧。8、树立实事求是、认真工作的思想,培养严密的逻辑思维能力。三、实训内容本次实训要求必须完成两类实训任务:(1)学生对指定的12个实验项目进行验证
4、与设计;(2) 学生从所给的6道实用题目中任意选择5个,自行进行编程实现。1 指定的实验项目验证与设计(对以下指定的12个实验项目进行验证)1、数据类型、运算符和表达式一、实验目的1.熟练表达式的表示方法2.了解表达式的运行结果二、实验内容和步骤用printf函数来输入表达式运行结果观察以下表达式的结果=xxx!=yx=z-2x=x-2x=zx=z以上表达式的值(2)当x=0,y=-1,z=1时 当x当x=0,y=-1,z=1时x&yx|yy&xy|z以上表达式的值三、问题讨论1.“=”和“=”有什么区别?2.“&”和“&”、“|”和“|”有什么区别?2、数据类型一、目的和要求了解语言中数据类
5、型的意义。二、实验内容和步骤、下面的程序试图计算由键盘输入的任意两个整数的平均值:include main()int x,y,a;scanf(“%x,%y,&x,&y);a=(x+y)/2;printf(“The average is :”a);调试无语法错误后,分别使用下列测试用例对上述程序进行测试:(),(), (),(),(),(),(),(),(),(),1、分析上述哪几组测试用例较好?通过测试,你发现程序有什么错误了吗?若有错误,请指出错误原因。、 操作符sizeof用以测试一个数据或类型所占用的存储空间的字节数。请编写一个程序,测试各基本数据类型所占用的存储空间大小。三、分析与讨论
6、如何正确地选用数据类型?(提示:给合前面做过的两个实验及书本进行讨论总结)3、运行符与表达式一、目的和要求、理解常用运行符的意义。、掌握语言表达式的运行规则。、本实验可在学习了教材第2.3节后进行。二、实验内容和步骤、编写一个语言程序,测试下列各表达式i , ji + 1,j + 1i + + ,j + + + i, + + ji + + + + + j+ + i + + + + + j + +要求在各表达式中i 和j都分别有相同的初值。在实验中注意下列问题:() 哪些表达式是错误的?为什么?() 理解,i,i的意义和优先级别。、编写一个程序,测试常用的十个运算符的优先顺序。四、分析与讨论分析
7、总结运算符的优先级。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);printf(“n”);printf(“a=%7d,b=%7dn”,&a,&b);printf(“c=%10.2f,d=
8、%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);这个程序有语法错误吗?为什么?、调试上述程序无语法错误后,用下面的测试数据,对程序进行测试:a=123,b=456,c=17.6,d=71837.65,e=70000,f=,u=62000,v=58765,c1=a,c2=b分析运行结果。特别注意输入c1,c2的值是什么?什么原因?、将输入e和f的语句改为:scanf(“%d,%d”,&e,&f);再用上述测试数据测试并分析结果。、将输入
9、u、v的语句改为:scanf(“%d,%d”,&u,&v);再用上述测试数据测试并分析结果。、将输出e,f的语句改为:printf(“e=%17d,f=%17dn”,e,f);再用上述测试数据测试并分析结果。、将输出u、v的语句改为:printf(“u=%u,v=%un”,u,v);或printf(“u=%d,v=%dn”,u,v);再用上述测试数据测试并分析结果。、请读者自己修改程序和改变数据输入的形式,分析各种情况下的输入与输出。、在scanf(“%c,%c”,&c1,&c2);语句之前加一个语句:getchar();、验证转义字符n 与 r的意义有何不同。三、分析与讨论、总结在print
10、f函数中可以使用的各种格式指定符,并给出样例。、总结在printf函数中可以使用的各转义字符及其功能。5、顺序程序结构程序设计一、实验目的1.进一步掌握C程序的编辑、编译、连接和运行的过程。2.熟悉顺序结构的程序设计方法。3.熟练使用C的各种表达式。4.熟练掌握输入、输出函数的使用。二、实验内容和步骤1. 输入x,y,编写程序求z=x+|y|的值。实验步骤与要求:(1)程序中用scanf函数输入x和y的值,请分析以下两个语句scanf(“%f%f”,x,y);scanf(“%f%f”,&x,&y);哪一个是正确的,分别运行之,分析程序运行结果。如果scanf函数改为scanf(“%f,%f”,
11、&x,&y);应该怎样输入数据。2. 编写输入三角形的三边长a、b、c,求三角形面积area的程序。实验步骤与要求:(1)输入前要加提示语句。(2)输出结果前要有必要的文字说明。(3)输入一组数据3,4,5,观察运算结果。(4)输入另外一组数据3,4,8,观察运算结果,分析这个运算结果是否有效。三、问题讨论上机各个环节所出现的错误及解决的办法6、选择结构一、实验目的、了解条件与程序流程的关系、了解用不同的数据使程序的流程覆盖不同的语句、分支和路径。、本实验应在学习教材第3.2节后进行。二、实验内容和步骤、题目有如下程序段:if (a1&b= =0) x=x/a;if(a=2|x1) x=x+1
12、;为了更容易明白程序的逻辑结构,我们用图5.1所示流程图来加以描述。a1&b= =0x=x/aa= =2|x1x=x+1 要求增加一些输入语句和输出语句,以便使上述程序能在不同的a,b和x值下运行,并且能观察程序流程经过(覆盖)了哪些语句、哪些分支及哪些路径。、实验步骤记下分别使用下列各组数据运行时的操作流程。() a=1,b=1,x=1;() 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;() a=2,b=1,x=1;() a=3,b=0,x=2。三、分析讨论(1) 用哪一组数据就可使程序中的每
13、个处理语句都执行一次?为了找出程序中各条处理语句中的错误,应该使用什么样的数据对程序进行测试?请上机验证自己的结论。(2) 用哪两组数据就可以使程序段中的每个分支都运行一次?这种情形与上面的讨论有何不同?如果为了找出程序中积压分支中的错误,应该使用什么样的数据对程序进行测试?请上机验证自己的结论。(3) 用哪两组数据就可以把判定框中的每个条件运算都进行一次?如果为了测试出判定条件中的错误,应使用哪些数据对程序进行测试?请上机验证自己的结论。(4) 用哪四组数据才可以把各种条件的组合都检测一遍? 如果为了测试各种条件的组合的情形,应该使用什么样的测试数据?请上机验证自己的结论。(5) 用哪四组数
14、据才可以把起始到终止的各条路径都覆盖一次?如果为了测试出程序在不同路径下的错误,应该使用什么样的测试数据?请上机验证自己的结论。四、进一步的实验1 题目从键盘上输入三个数,让它们代表三条线段的长度,请写一个判断这三条线段所组成的三角形属于什么类型(不等边,等腰,等边或不构成三角形)的C程序。2 请分别设计下列数据对自己的程序进行测试:(1) 找出各条语句中的错误。(2) 找出积压分支中的错误。(3) 找出各条件中的错误。(4) 找出各种条件组合中的错误。(5) 找出各条路径中的错误。7、 条件型循环结构一、目的和要求1、掌握在程序设计条件型循环结构时,如何正确地设定循环条件,以及如何控制循环的
15、次数。2、了解条件型循环结构的基本测试方法。3、本实验可在学习教材3.3节后进行。二、实验内容与步骤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各是什么值时,能分别使程序按下
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 电气 指导书 20
限制150内