矿井提升机电控制系统设计_第1页
矿井提升机电控制系统设计_第2页
矿井提升机电控制系统设计_第3页
矿井提升机电控制系统设计_第4页
矿井提升机电控制系统设计_第5页
已阅读5页,还剩38页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

机电控制程序设计技术实验指导书1专业机械电子工程专业教研室机械电子工程教研室机电工程学院2013年3月机电控制程序设计技术实验指导书机电控制程序设计技术实验指导书2前言C语言是一种被广泛学习、普遍使用的计算机程序设计语言。它的高级语言行式、低级语言功能具有特殊的魅力。由于C语言具有完整的编程语言特点,因而被大多数高等院校作为典型的计算机教学语言。在计算机等级、全国计算机应用证书考试等多种计算机知识考试中都有C语言。此外,C语言作为一门实用的、功能强大的程序语言,被程序设计人员广泛使用。因此,C语言是一门十分重要的程序设计语言。实验要求实验过程中,要求学生做到(1)预习实验指导书有关部分,认真做好实验内容的准备,就实验可能出现的情况提前作出思考和分析。(2)仔细观察上机编程时出现的各种现象,记录主要情况,作出必要说明和分析。(3)认真书写实验报告。实验报告包括实验目的和要求,实验情况及其分析,写出程序设计说明,给出源程序框图和清单。(4)遵守机房纪律,服从辅导教师指挥,爱护实验设备。(5)实验课程不迟到,如有事不能出席,所缺实验一般不补。实验的验收将分为两个部分。第一部分是上机操作,包括检查程序运行和即时提问。第二部分是提交书面的实验报告。目录实验一顺序程序设计7实验二选择结构程序设计10实验三循环结构程序设计13实验四数组17实验五函数24实验六预处理命令29实验七指针30实验八结构体与公用体33实验九位运算34实验十文件操作35实验十一小规模实用软件的设计37机电控制程序设计技术实验指导书3C语言上机操作指导程序设计是实践性很强的过程,任何程序最终都必须在计算机上运行,以检验程序的正确与否。因此在学习程序设计中,一定要重视上机实践环节,通过上机可以加深理解C语言的有关概念,以巩固理论知识,另一方面也可以培养程序调试的能力与技巧。1C语言程序的上机步骤按照C语言语法规则而编写的C程序称为源程序。源程序由字母、数字及其它符号等构成,在计算机内部用相应的ASCII码表示,并保存在扩展名为“C”的文件中。源程序是无法直接被计算机运行的,因为计算机的CPU只能执行二进制的机器指令。这就需要把ASCII码的源程序先翻译成机器指令,然后计算机的CPU才能运行翻译好的程序。源程序翻译过程由两个步骤实现编译与连接。首先对源程序进行编译处理,即把每一条语句用若干条机器指令来实现,以生成由机器指令组成的目标程序。但目标程序还不能马上交计算机直接运行,因为在源程序中,输入、输出以及常用函数运算并不是用户自己编写的,而直接调用系统函数库中的库函数。因此,必须把“库函数”的处理过程连接到经编译生成的目标程序中,生成可执行程序,并经机器指令的地址重定位,便可由计算机运行,最终得到结果。C语言程序的调试、运行步骤可以用图A1表示图A1C语言程序的调试、运行步骤图A1中,虚线表示当某一步骤出现错误时的修改路线。运行时,无论是出现编译错误、连接错误,还是运行结果不对(源程序中有语法错误或逻辑错误),都需要修改源程序,并对它重新编译、连接和运行,直至将程序调试正确为止。除了较简单的情况,一般的程序很难一次就能做到完全正确。在上机过程中,根据出错现象找出错误并改正称为程序调试。我们要在学习程序设计过程中,逐步培养调试程序的能力,它不可能靠几句话讲清楚,要靠自己在上机中不断摸索总结,它可以说是一种经验积累。程序中的错误大致可分为三类程序编译时检查出来的语法错误;连接时出现的错误;程序执行过程中的错误。编译错误通常是编程者违反了C语言的语法规则,如保留字输入错误、大括号不匹配、语句少分号等等。连接错误一般由未定义或未指明要连接的函数,或者函数调用不匹配等因素引起,对系统函数的调用必须要通过“INCLUDE”说明。对于编译连接错误,C语言系统会提供出错信息,包括出错位置(行号)、出错提示信息。编程者可以根据这些信息,找出相应错误所在。有时系统提示的一大串错误信息,并不表示真的有这么多错误,往往是因为前面的一两个错误带来的。所以当你纠正了几个错误后,不妨再编译连接一次,然后根据最新的出错信息继续纠正。机电控制程序设计技术实验指导书4有些程序通过了编译连接,并能够在计算机上运行,但得到的结果不正确,这类在程序执行过程中的错误往往最难改正。错误的原因一部分是程序书写错误带来的,例如应该使用变量X的地方写成了变量Y,虽然没有语法错误,但意思完全错了;另一部分可能是程序的算法不正确,解题思路不对。还有一些程序有时计算结果正确,有时不正确,这往往是编程时,对各种情况考虑不周所致。解决运行错误的首要步骤就是错误定位,即找到出错的位置,才能予以纠正。通常我们先设法确定错误的大致位置,然后通过C语言提供的调试工具找出真正的错误。为了确定错误的大致位置,可以先把程序分成几大块,并在每一块的结束位置,手工计算一个或几个阶段性结果,然后用调试方式运行程序,到每一块结束时,检查程序运行的实际结果与手工计算是否一致,通过这些阶段性结果来确定各块是否正确。对于出错的程序块,可逐条仔细检查各语句,找出错误所在。如果出错块程序较长,难以一下子找出错误,可以进一步把该块细分层更小的块,按照上述步骤进一步检查。在确定了大致出错位置后,如果无法直接看出错误,可以通过单步运行相关位置的几条语句,逐条检查,一定能找出错误的语句。当程序出现计算结果有时正确有时不正确的情况时,其原因一般是算法对各种数据处理情况考虑不全面。解决办法最好多选几组典型的输入数据进行测试,除了普通的数据外,还应包含一些边界数据和不正确的数据。比如确定正常的输入数据范围后,分别以最小值、最大值、比最小值小的值和比最大值大的值,多方面运行检查自己的程序。VISUALC语言集成环境C语言是在C语言的基础上发展而来,它增加了面向对象的编程,成为当今最流行的一种程序设计语言。VISUALC是微软公司开发的,面向WINDOWS编程的C语言工具。它不仅支持C语言的编程,也兼容C语言的编程。由于VC被广泛地用于各种编程,使用面很广。这里简要地介绍如何在VC下运行C语言程序。1启动VCVC是一个庞大的语言集成工具,经安装后将占用几百兆磁盘空间。从“开始”“程序”“MICROSOFTVISUALSTUDIO60”“MICROSOFTVISUALC60”,可启动VC。2新建/打开C程序文件选择“文件”菜单的“新建”菜单项,单击如图A2所示的“文件”标签,选中“CSOURCEFILE”,按“确定”。然后在编辑窗口中输入程序。图A2新建文件机电控制程序设计技术实验指导书5如果程序已经输入过,可选择“文件”菜单的“打开”菜单项,并在查找范围中找到正确的文件夹,调入指定的程序文件。3程序保存在打开的VC界面上,可直接在编辑窗口输入程序,由于完全是WINDOWS界面,输入及修改可借助鼠标和菜单进行,十分方便。当输入结束后,保存文件时,因指定扩展名“C”,否则系统将按C扩展名“CPP”保存。如图A3所示。图A3指定保存文件名4执行程序首先要生成可执行文件。使用VC“编译”菜单中的“构件”菜单项,如图A4所示,也可使用快捷键【F7】。在编译连接过程中VC将保存该新输入的程序,并生成一个同名的工作区。保存文件时须填入文件名,如“41C”。假如不指定扩展名C,VC会把扩展名定义为CPP,即C程序。如果程序没有错误,将在图A5信息窗口中显示内容0ERRORS0WARNINGS。表示没有任何错误。有时出现几个警告性信息WARNING,不影响程序执行。假如有致命性错误(ERROR),如图A6所示,双击某行出错信息,程序窗口中会指示对应出错位置,根据信息窗口的提示分别予以纠正。然后用“编译”菜单中的“执行”菜单项(或快捷键【CTRL】【F5】)执行程序。图A4编译连接菜单机电控制程序设计技术实验指导书6图A5编译连接正确图A6编译连接出错当运行C程序后,VC将自动弹出数据输入输出窗口,如图A7所示。按任意键将关闭该窗口。机电控制程序设计技术实验指导书7图A7数据输入输出窗口对于编译连接执行操作,VC还提供了一组工具按钮,如图A8所示。图A8编译连接执行工具按钮组5关闭程序工作区当一个程序编译连接后,VC系统自动产生相应的工作区,以完成程序的运行和调试。若想执行第二个程序时,必须关闭前一个程序的工作区,然后通过新的编译连接,产生第二个程序的工作区。否则的话运行的将一直是前一个程序。“文件”菜单提供关闭程序工作区功能,如图A9A,执行“关闭工作区”菜单功能,然后在如图A9B对话框中选择“否”。如果选择“是”将同时关闭源程序窗口。图A9关闭程序工作区实验一顺序程序设计【实验目的】1学会顺序程序设计的思想2熟练掌握各种数据类型的输入输出格式,并学会使用输入输出函数3学会使用表达式【实验内容】1在屏幕中输出一行文字“HELLO,WELCOME”说明(1)只需要在屏幕中显示一行文字即可参考程序如下INCLUDEMAIN机电控制程序设计技术实验指导书8PRINTF“HELLO,WELCOMEN“2输入一个华氏温度,要求输出摄氏温度。公式为3295FC输出要求有文字说明,取两位小数说明(1)摄氏温度F和华氏温度C都应用FLOAT类型变量存储(2)注意表达式书写中的各变量的顺序问题(3)输出时只需输出两位小数参考程序如下INCLUDEMAINFLOATF,CPRINTF“INPUTF“SCANF“F“,C5F32/9PRINTF“C2FN“,C3输入三角形三边长、,求三角形周长和面积。用SCANF输入数据,输出计算ABCLS结果,输出时要求有文字说明,取消书店后两位小数。说明(1)程序设计中使用的所有变量均为FLOAT类型(2)三角形周长公式CBAL(3)三角形面积公式;,其中CPPS2CBAP(4)注意应保证输入数据能够构成三角形(5)需要使用开根号函数SQRT,在程序顶部加上INCLUDE一句(6)以,运行程序,查看执行结果0A4B05C参考程序如下INCLUDEINCLUDEMAINFLOATA,B,C,L,SFLOATP机电控制程序设计技术实验指导书9PRINTF“INPUTA,B,C“SCANF“F,F,F“,LABCPABC/2SSQRTPPAPBPCPRINTF“L2FN“,LPRINTF“S2FN“,S4设圆半径,圆柱高,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体51R3H积。用SCANF输入数据,输出计算结果,输出时要求有文字说明,取消书店后两位小数。说明(1)程序设计中使用的所有变量均为FLOAT类型(2)圆周长公式RL2(3)圆面积公式1S(4)圆球表面积公式24R(5)圆球体积公式31V(6)圆柱体积公式HR2参考程序如下INCLUDEDEFINEPI314MAINFLOATR15,H3FLOATL,S1,S2,V1,V2L2PIRS1PIRRS24PIRRV14PIRRR/3V2PIRRHPRINTF“L2FN“,LPRINTF“S12FN“,S1PRINTF“S22FN“,S2PRINTF“V12FN“,V1PRINTF“V22FN“,V2机电控制程序设计技术实验指导书10实验二选择结构程序设计【实验目的】1了解C语言的逻辑运算2学会使用IF语句和SWITCH语句3熟练掌握选择结构程序设计方法【实验内容】1有一函数X1XY2013XX写一程序,输入,输出值说明(1)根据输入的不同求的值,使用IF语句Y(2)分别输入三个分段中的三个数,判断输出结果是否正确,测试程序正确与否参考程序如下INCLUDEMAINFLOATX,YPRINTF“INPUTX“SCANF“F“,IFX1PRINTF“YFN“,Y2从键盘输入一个字符,可以是数字、字母、或是标点符号,对输入的字符进行判断,如果是数字则输出“ISANUMBER”,如果是字母则输出“ISALETTER”,如果是其他的字符怎输出“ISTHEOTHER”(为输入的字符)说明(1)从键盘输入一个字符,用CHAR类型变量存储(2)使用IF语句作判断(3)判断条件根据输入字符的ASCII码值的范围,具体的ASCII码值参看书后的ASCII机电控制程序设计技术实验指导书11码表参考程序如下INCLUDEMAINCHARCPRINTF“INPUTACHAR“SCANF“C“,IFC48FLOATTEMPPRINTF“INPUTA,B“SCANF“F,F“,IFAMAININTYEARINTFLAG0PRINTF“INPUTAYEAR“SCANF“D“,IFYEAR40IFFLAG1PRINTF“DISALEAPYEARN“,YEARELSEPRINTF“DISNOTALEAPYEARN“,YEAR5从键盘输入一个月号,显示输出该月号的英文名称说明(1)使用IF语句较为麻烦,因为需要做12次比较(2)使用SWITCH语句(3)如果输入月份超出范围,则应当输出错误信息参考程序如下INCLUDEMAININTMONTHPRINTF“INPUTAMONTH“SCANF“D“,SWITCHMONTHCASE1PRINTF“JANUARYN“BREAKCASE2PRINTF“FEBRUARYN“BREAKCASE3PRINTF“MARCHN“BREAKCASE4PRINTF“APRILN“BREAKCASE5PRINTF“MAYN“BREAKCASE6PRINTF“JUNEN“BREAKCASE7PRINTF“JULYN“BREAKCASE8PRINTF“AUGUSTN“BREAKCASE9PRINTF“SEPTEMBERN“BREAKCASE10PRINTF“OCTOBERN“BREAKCASE11PRINTF“NOVEMBERN“BREAKCASE12PRINTF“DECEMBERN“BREAK机电控制程序设计技术实验指导书13DEFAULTPRINTF“INPUTERRORN“实验三循环结构程序设计【实验目的】1学会使用WHILE、DOWHILE、FOR语句2熟练掌握循环结构程序设计方法3掌握选择结构与循环结构的嵌套【实验内容】1求和(即求1220)201N说明(1)首先要求出每一项的N的值(2)然后把各项相加得到所求的值(3)存储求和运算结果的变量的初始值应为0(4)存储求积运算结果的变量的初始值应为1参考程序如下使用WHILE循环INCLUDEMAINFLOATSUM0FLOATMID1INTN1WHILEN21MIDMIDNNSUMSUMMIDPRINTF“SUMFN“,SUM使用FOR循环INCLUDEMAINFLOATSUM0FLOATMID1INTN机电控制程序设计技术实验指导书14FORN1NMAININTBIG,SMALLINTRESULTINTI,JINTFLAGFORI100I100I机电控制程序设计技术实验指导书15FLAG0FORJ2JMAININTM,N,TEMPINTIINTGREAT,LEASTPRINTF“INPUTM,N“SCANF“D,D“,IFMNTEMPMMN机电控制程序设计技术实验指导书16NTEMPFORI1IMAININTA,B,CINTIINTTEMPFORI100IMAININTNUM10INTI,JINTTEMPPRINTF“INPUT10NUMBERS“FORI0INUMJ1TEMPNUMJNUMJNUMJ1NUMJ1TEMPPRINTF“THESORTEDNUMBERS“FORI0IMAINCHARSTR50CHARCHINTCOUNT0INTI0PRINTF“INPUTASTRING“SCANF“S“,STRGETCHARPRINTF“INPUTTHECHAR“SCANF“C“,WHILESTRI0IFSTRICHCOUNTIPRINTF“THENUMBEROFCISDN“,CH,COUNT注意程序中多了一行GETCHAR,这并不是多余的,而是因为在输入完字符串后,键入的回车被放入到内存的输入缓冲区中,在输入特殊字符的时候CH得到了上一个回车,而无法得到我们要输入的字符,因此需要使用一行GETCHAR将缓冲区中的回车读出,相当于清除缓冲区的作用。3青年歌手参加歌曲大奖赛,有10个评委进行打分,试编程求这位选手的平均得分(去掉一个最高分和一个最低分)。说明(1)将10位评委的打分放入一个含有10个元素的一维数组中(2)程序设计重点是排序(3)排序后只要用中间的8个元素即可(4)输出格式为THEAVERAGEIS机电控制程序设计技术实验指导书19参考程序如下INCLUDEMAINFLOATSCORE10FLOATAVERAGE0FLOATSUM0INTI,JFLOATTEMPPRINTF“INPUTTHE10SCORE“FORI0ISCOREJ1TEMPSCOREJSCOREJSCOREJ1SCOREJ1TEMPFORI1IMAIN机电控制程序设计技术实验指导书20CHARSTR150,STR220INTI,JPRINTF“INPUTSTRING1“SCANF“S“,STR1GETCHARPRINTF“INPUTSTRING2“SCANF“S“,STR2FORI0STR1I0IFORJ0STR2J0J,ISTR1ISTR2JSTR1I0PRINTF“THECONNECTEDSTRINGISSN“,STR15已有一个已排好序的数组,从键盘输入一个数,要求按原来排序的规律将它插入数组中。说明(1)需要保证数组的元素据个数比插入前多1(2)需要找到在数组中插入的位置(3)可倒序查找假设从小到大排序,从最后一个开始查找,如果要插入元素比当前数组元素小则将该数组元素赋予后边一个元素,继续比较;否则将要插入元素赋予该数组元素的下一个元素,然后BREAK结束循环(4)输入该数组即可参考程序如下INCLUDEMAININTA100,1,2,4,5,6,7,8,9INTB3INTIFORI8I0IIFAIBAI1AIELSEAI1BBREAKPRINTF“THENEWSORTEDARRAYIS“FORI0IMAININTNUM1100,1,2,3,4,5,6,7,8,9INTNUM291,2,3,4,5,6,7,8,9INTIINTTEMPFORI0I机电控制程序设计技术实验指导书22MAININTARRAY331,2,3,4,5,6,7,8,9INTSUM0INTI,JFORI0IMAININTA100,I,JINTINS,DEL,FIND,POSPRINTF“INPUTTHEDATA“FORI0IIJAJ1AJAIINS机电控制程序设计技术实验指导书23BREAKIFI10AIINSPRINTF“NAFTERINSERT“FORI0IPRIMEINTNUMINTIINTFLAG0FORI2ISORTINTNUMINTI,JINTTEMPFORI0INUMJ1TEMPNUMJNUMJNUMJ1NUMJ1TEMPMAININTNUM10INTIPRINTF“INPUT10NUMBERS“FORI0IVOIDTURNINTNUM55INTI,JINTTEMPFORI0I参考程序如下INCLUDEINCLUDEVOIDREVERSECHARSTRINTLENGTHINTICHARTEMPLENGTHSTRLENSTRFORI0IVOIDCONNECTCHARSTR1,CHARSTR2INTI,JFORI0STR1I0IFORJ0STR2J0J,I机电控制程序设计技术实验指导书28STR1ISTR2JSTR1I0MAINCHARSTR150,STR220INTI,JPRINTF“INPUTSTRING1“SCANF“S“,STR1GETCHARPRINTF“INPUTSTRING2“SCANF“S“,STR2CONNECTSTR1,STR2PRINTF“THECONNECTEDSTRINGISSN“,STR16写一函数,求字符串的长度,并编写主函数。说明(1)求字符串长度的函数名为COUNT(2)字符串结束的标志是0(3)输出格式为THELENGTHOFSTRINGIS(4)使用数组作为函数参数参考程序如下INCLUDEINTCOUNTCHARSTRINTIFORI1STRI0IRETURNIMAINCHARSTR10INTLENGTHPRINTF“INPUTTHESTRING“SCANF“S“,STRLENGTHCOUNTSTRPRINTF“THELENGTHOFSTRINGISDN“,LENGTH机电控制程序设计技术实验指导书29实验六预处理命令【实验目的】1掌握C语言预处理命令的使用方法2熟练掌握宏定义【实验内容】1判断下面程序的执行结果INCLUDEDEFINEPQ45DEFINEABCXPQXXMAININTA3,B,C,DBABCACABCA1D20ABCAPRINTF“BD,CD,DDN“,B,C,D参考答案相当于B45AAC45A1A1D2045AA输出结果B13,C11,D18机电控制程序设计技术实验指导书30实验七指针【实验目的】1掌握C语言指针变量的定义、声明和赋值2学会使用指针变量的程序设计3掌握指针作为函数参数的用法【实验内容】1使用指针作为函数参数,写一交换两个数的函数说明(1)交换两个数的函数名为SWAP(2)使用指针变量作为函数参数(3)在主函数中输入输出,自定义函数只完成交换功能参考程序如下INCLUDESWAPINTP1,INTP2INTTEMPTEMPP1P1P2P2TEMPMAININTA,BINTP1,P2PRINTF“INPUTA,B“SCANF“D,D“,P1P2PRINTF“BEFORESWAPAD,BDN“,A,BSWAPP1,P2PRINTF“AFTERSWAPAD,BDN“,A,B2使用指针作为函数参数,写一求数组中最大值和最小值的函数。说明(1)函数名为MAXANDMIN(2)使用指针指向一维数组(3)最大值和最小值的输出必须要在主函数中参考程序如下INCLUDEMAXANDMININTARRAY,INTMAX,INTMIN机电控制程序设计技术实验指导书31INTIMAXARRAY0MINARRAY0FORI0IARRAYIMINARRAYIMAININTARRAY100,1,2,3,4,5,6,7,8,9INTMAX,MININTP1,P2P1P2MAXANDMINARRAY,P1,P2PRINTF“MAXDNMINDN“,MAX,MIN3找出以下程序的错误,并加以修改。交换两个数INCLUDESWAPINTP1,INTP2INTTEMPTEMPP1P1P2P2TEMPMAININTA,BINTPOINTER_1,POINTER_2SCANF“D,D“,POINTER_1POINTER_2SWAPPOINTER_1,POINTER_2PRINTF“ND,DN“,A,B输出数组重点全部元素机电控制程序设计技术实验指导书32INCLUDEMAININTP,I,A10PAFORI0IARRAYMAXANDMININTARRAY,INTMAX,INTMIN,INTNINTI0,J0MAXARRAYINJMINARRAYINJFORI0IARRAYINJMINARRAYINJMAININTARRAY331,2,3,4,5,6,7,8,9INTMAX,MININTP,P1,P2PARRAYP1P2ARRAYMAXANDMINP,P1,P2,3PRINTF“MAXDNMINDN“,MAX,MIN机电控制程序设计技术实验指导书33实验八结构体与公用体【实验目的】1掌握C语言结构体变量的定义和使用2学会设计简单的结构体程序【实验内容】1有一学生信息包含学号、姓名、性别、年龄、电话等信息,要求设以一个结构体用于存储该学生信息,实现学生信息的输入和显示。说明(1)使用结构体实现学生信息的存储(2)按照序号顺序排列学生信息(3)实现按照序号查找学生信息参考程序如下INCLUDESTRUCTSTUDENTCHARNUM10CHARNAME10CHARSEX5INTAGEMAINSTRUCTSTUDENTSTU3INTIINTCHOICEPRINTF“YOUCANINPUTTHREESTUDENTSN“FORI0IMAININTN0INTPP0WHILEPMAINFILEFPINTIFPFOPEN“DATEDAT“,“W“FORI1IMAINFILEFPINTNUM0INTIINTX0,Y0,Z0,S10,S20,S30FPFOPEN“CJDAT“,“R“FORI0I90NUMNUM1PRINTF“THENUMBEROFTHEAVERAGESCORE90ISD“,NUMFCLOSEFP3统计上题CJDAT文件中每个学生的总成绩,并将原有数据和计算出的总分数存放在磁盘文件“STUD”中。说明(1)还需要打开STUD文件(2)向STUD中写入数据参考程序如下INCLUDEMAINFILEFP1,FP2INTX,Y,ZFP1FOPEN“CJDAT“,“R“FP2FOPEN“STUD“,“W“WHILEFEOFFP1FSCANFFP1,“D,D,D“,PRINTF“D,D,D,DN“,X,Y,Z,XYZFPRINTFFP2,“D,D,D,DN“,X,Y,Z,XYZFCLOSEFP1FCLOSEFP2机电控制程序设计技术实验指导书37实验十一小规模实用软件的设计【实验目的】1运用课程所学知识,设计一个小规模的实用程序。2进一步提高程序设计的能力。3理解和掌握函数和文件在程序设计中的重要作用,熟悉常用算法,理解算法设计的作用。【实验内容】1实验的基本内容学生自行设计一个小规模实用软件,如学生成绩管理、日记管理等,运用数组的算法进行数据处理,以文件的方式保存和打开数据,各种功能要求使用函数实现。要求涉及以下内容及算法程序能够通过数字提示,选择进行相应的操作,要求界面易于操作。一维数组的遍历、排序、插入、逆序、查找、删除、求MAXMIN,字符串求长度、比较大小、复制、连接等算法(自行选择所需算法)。二维数组遍历、求对角线元素之和、求MAX/MIN,转置、按行列方式输出等算法(自行选择所需算法)。字符数组或字符串的相关算法。数据能够保存和打开。也可使用结构体数组作为数据结构。【实验的基本要求】本实验为设计型实验,学生在教师的指导下,从实验四开始进入设计阶段,实验过程一直延续到课程的最后。实验课内上机时间2学时,课外上机时间8学时。要求实验结束提交源程序和完整实验报告。范例程序(仅供参考)下边是一个学生信息管理系统,其中学生信息包含学号、姓名、性别、年龄、专业、宿舍、电话等信息,要求设以一个结构体用于存储该学生信息,实现学生信息的添加、删除、查找、修改和显示功能。说明(1)使用结构体实现学生信息的存储(2)按照学号顺序排列学生信息(3)实现按照学号查找学生信息(4)使用链表实现(5)界面设计尽量使得操作简单参考程序如下INCLUDEINCLUDEINCLUDESTRUCTSTUDENT机电控制程序设计技术实验指导书38CHARNUM10CHARNAME10CHARSEX5INTAGECHARMAJOR20CHARDORMITORY10CHARPHONE10STRUCTNODESTRUCTSTUDENTDATASTRUCTNODENEXTSTRUCTNODEHEADSTRUCTNODECURRPRINTMAINMENUPRINTF“NTHISISASTUDENTMANAGEMENTSYSTEMN“PRINTF“N“PRINTF“1DISPLAYALLSTUDENTN“PRINTF“2INSERTANEWSTUDENTN“PRINTF“3FINDASTUDENTN“PRINTF“4QUITN“PRINTF“N“PRINTF“WHATDOYOUWANTTODO“DISPLAYALLINTCOUNT1INTFLAG0IFHEADNULLPRINTF“NTHEREISNOSTUDENTN“ELSECURRHEADWHILECURRNULLPRINTF“NNODSTUDENTSINFORMATIONN“,COUNTPRINTF“THENUMBERISSN“,CURRDATANUMPRINTF“THENAMEISSN“,CURRDATANAMEPRINTF“THESEXISSN“,CURRDATASEXPRINTF“THEAGEISDN“,CURRDATAAGEPRINTF“THEMAJORISSN“,CURRDATAMAJOR机电控制程序设计技术实验指导书39PRINTF“THEDORMITORYISDN“,CURRDATADORMITORYPRINTF“THEPHONEISSN“,CURRDATAPHONEPRINTF“PRESSENTERTOCONTINUE“IFFLAG0GETCHARFLAG1GETCHARCOUNTCURRCURRNEXTINSERTSTRUCTSTUDENTSTUSTRUCTNODETEMPSTRUCTNODEMALLOCSIZEOFSTRUCTNODESTRUCTNODEMIDSTRUCTNODEMALLOCSIZEOFSTRUCTNODEINTRESULTPRINTF“INPUTNUMBER“SCANF“S“,STUNUMPRINTF“INPUTNAME“SCANF“S“,STUNAMEPRINTF“INPUTSEX“SCANF“S“,STUSEXPRINTF“INPUTAGE“SCANF“D“,STUAGEPRINTF“INPUTMAJOR“SCANF“S“,STUMAJORPRINTF“INPUTDORMITORY“SCANF“S“,STUDORMITORYPRINTF“INPUTPHONE“SCANF“S“,STUPHONEIFHEADNULLHEADSTRUCTNODEMALLOCSIZEOFSTRUCTNODEHEADDATASTUHEADNEXTNULLCURRHEADELSEMIDDATASTU机电控制程序设计技术实验指导书40MIDNEXTNULLCURRHEADWHILESTRCMPSTUNUM,CURRDATANUM0CURRCURRNEXTIFSTRCMPSTUNUM,CURRDATANUM0PRINTF“THENUMBEROFSTUDENTISALREADYEXISTING“IFSTRCMPSTUNUM,CURRDATANUMNEXTMIDMIDNEXTCURRELSECURRNEXTMIDFINDINTFLAG0INTCOUNT0CHARCHINTNCHARNUM10PRINTF“INPUTTHENUMBERWHICHYOUWANTTOFIND“SCANF“S“,NUMCURRHEADIFHEADNULLPRINTF“NT

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论