《2022年C语言课程设计报告-小型图书购销管理系统 .pdf》由会员分享,可在线阅读,更多相关《2022年C语言课程设计报告-小型图书购销管理系统 .pdf(29页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、1 计算机程序设计基础课程设计报告项目名称小型图书购销管理系统学生姓名李晞月学院信息科学与工程学院指导教师穆帅名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 29 页 -1 目录目录.1 第一章系统描述.2 第二章功能模块结构.3 第三章数据结构设计.6 第四章主要模块的算法说明.7 第五章运行结果.9 第六章课程设计总结.13 参考文献.15 附录.16 名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 29 页 -2 第一章系统描述系统说明本程序采用Visual C+6.0编译器编译。系统运行之前需要保证在“”目录下有以下四个txt文件,名为:jibenxinxi
2、.txt、kucunxinxi.txt、buy.txt、sell.txt系统的基本功能用户界面采用文本菜单界面,设有欢迎界面。各级菜单层次分明,切换方便。系统的功能可实现循环连续操作,直至用户选择返回或退出。重要操作之前会有确认提示。若输入不合法,有出错原因提示。出错提示以及查询结果输出后可按任意键继续,以便用户有停顿时间来阅读。系统采用四个文件分别保存以下信息:图书基本信息、库存信息、采购纪录、出售纪录。实现图书基本信息的录入及保存。信息录入时可限制编号不重复。可查询文件中保存的图书基本信息。输入书名(或编号、作者、价格)可调出符合的信息,也可全部显示。其中按价格查询时,输入一个范围可将在范
3、围内的信息都显示出来。具有图书采购功能:输入要采购的图书编号能自动把该书的基本信息显示出来,输入采购数量能自动得出采购所需金额,确认采购后,显示购买成功。执行完采购功能后可实现对库存信息的添加和修改,以及向文件中添加采购纪录。可随时查询保存在文件中的采购纪录。具有图书出售功能:输入要采购的图书编号能显示出该书信息及库存数量,输入出售数量能自动得出出售所得金额,确认出售后,显示出售成功。执行完出售功能后可实现对库存信息的删除和修改,以及向文件中添加出售纪录。可随时查询保存在文件中的出售纪录。利润统计功能,可动态显示运行系统以来的采购总金额、销售总金额及总利润。有库存信息查询功能,可将库存中的全部
4、书籍信息逐条显示出来。名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 29 页 -3 第二章功能模块结构功能模块划分本系统主要由六大模块构成:图书基本信息录入模块,图书基本信息查询模块,图书采购模块,图书销售模块,利润统计模块,库存信息查询模块。大模块下再划分小的模块。其中图书基本信息查询模块下又分为五个查询模块,图书采购模块下又分为购书和历史查询两个模块,图书销售模块同样也由售书和历史查询两部分组成。功能模块结构图小 型 图 书 购 销 管 理 系 统基本信息录入基本信息查询库存信息查询利润统计按书名查找按编号查找按作者查找按价格查找图书采购历史购书纪录购书图书销售历史售书纪录
5、售书全部显示名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 29 页 -4 各模块的功能描述(一)图书基本信息录入模块1)在主菜单选择“1”后出现欢迎辞并要求输入图书编号,当输入的编号已经存在则提示另输入一个编号。2)编号输入合法时则依次提示输入后面的信息,输入结束后将信息保存入文件。3)输入完后询问是否继续录入下一本书的信息,是则继续,否则返回主菜单。(二)图书基本信息查询模块1)在主菜单选择“2”后出现欢迎辞并出现基本信息查询二级菜单,有按书名、按编号、按作者、按价格和全部显示五种查找方式。选择“0”可返回主菜单,有其他非法输入则提示出错,按任意键后可继续进行二级菜单的选择。
6、2)在二级菜单选择“1”后按书名查找,提示输入书名。若基本信息中没有,则提示查无此书并返回二级菜单,否则将符合此书名的书籍信息逐条罗列出来。3)在二级菜单选择“2”或“3”则分别按编号和按作者查找,功能类似2)。4)在二级菜单选择“4”后按价格查找,任意输入两个数字确定一个范围,可将在此价格范围内的书籍信息全部显示出来。5)在二级菜单选择“5”后将全部的图书基本信息以清单形式列出,按任意键返回二级菜单。(三)图书采购模块1)在主菜单选择“3”后出现欢迎辞并出现图书采购二级菜单,有开始购书、历史记录和返回的选择。选择“0”可返回主菜单,有其他非法输入则提示出错,按任意键后可继续进行二级菜单的选择
7、。2)在二级菜单选择“1”后开始购书,提示输入要购买的书的编号。若基本信息中没有,则提示查无此书并返回二级菜单,否则调出该书基本信息并提示输入采购数量。3)输入采购数量后,自动得出采购所需金额,然后询问是否确认购买,若否便询问是否购买其他书,是则提示购买成功,并增加库存量、纪录购买信息,以及修改利润值和总采购金额值,然后询问是否继续购买。若不继续购买则返回二级菜单。4)在二级菜单选择“2”后可查询历史购买纪录,将以往全部的购买纪录以清单形式列出,按任意键返回二级菜单。(四)图书销售模块1)在主菜单选择“4”后出现欢迎辞并出现图书销售二级菜单,有开始售书、历史记录和返回的选择。选择“0”可返回主
8、菜单,有其他非法输入则提示出错,按任意键后可继续进行二级菜单的选择。2)在二级菜单选择“1”后开始售书,提示输入要出售的书的编号。若库存信息中没有,则提示尚无进购并返回二级菜单,否则调出该书基本信息及库存量并提示输入出售数量。名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 29 页 -5 3)输入采购数量后,若库存不足则提示不足,然后询问是否继续卖书。若数量合法则自动得出出售所得金额,然后询问是否确认出售,若否便询问是否出售其他书,是则提示出售成功,并减少库存量、纪录销售信息,以及修改利润值和总销售金额值。然后询问是否继续卖书。若不,则返回二级菜单。4)在二级菜单选择“2”后可查
9、询历史出售纪录,将以往全部的出售纪录以清单形式列出,按任意键返回二级菜单。(五)利润统计模块1)在主菜单选择“5”后便可看到系统运行以来的购销情况,显示有购书总支出、售书总收入以及销售总利润。2)程序列出结果后按任意键方继续,返回主菜单。(六)库存信息查询模块1)在主菜单选择“6”后可查询库存信息,系统将库存中的全部书籍信息以清单形式罗列出来,最末一行显示库存总量。2)程序列出结果后按任意键方继续,返回主菜单。名师资料总结-精品资料欢迎下载-名师精心整理-第 6 页,共 29 页 -6 第三章数据结构设计程序采用结构体、文件以及结构体数组实现数据的输入输出、保存和删改。系统采用四个文件保存数据
10、,包括:1)图书基本信息文件:图书编号、书名、作者、出版社、出版日期、定价。2)库存信息文件:图书编号、书名、作者、出版社、出版日期、定价、库存数量。3)历史采购纪录文件:图书编号、采购数量、单价、采购金额。4)历史出售纪录文件:图书编号、销售数量、单价、销售金额。构造了如下两个结构体,分别用于储存图书基本信息和购销信息:struct book char num10;char bookname30;char author20;char press30;char time10;float price;int amount;图书基本信息的输入和输出使用了struct book 结构体。图书采购模块
11、中,利用 struct deal 结构体存储购书纪录,用到的计算公式有:本次采购金额=定价*采购数量;库存量+=采购数量;利润-=采购金额;采购总金额+=本次采购金额图书销售模块中,利用 struct deal 结构体存储售书纪录,用到的计算公式有:本次出售金额=定价*出售数量*150%;库存量-=出售数量;利润+=出售金额;出售总金额+=本次出售金额利润统计中直接将以上计算好的利润、采购总金额和销售总金额打印输出。库存信息查询中,库存总量是库存信息中每部书籍的数量相加的总和。struct deal char num10;float price;int amount;float money;名
12、师资料总结-精品资料欢迎下载-名师精心整理-第 7 页,共 29 页 -7 第四章主要模块的算法说明各模块功能的实现是通过对各函数的调用完成的,每个函数能够完成相应独立的任务,按一定规则顺序调用这些函数就组成了解决问题的模块.因此,模块化的程序设计主要是靠设计和调用函数来实现的.以下按模块对本系统中各函数进行简单介绍。(一)图书基本信息录入模块此模块调用了一个函数add(),此函数用于录入图书基本信息,并保存入文件。定义了一个文件指针变量,指向文件 jibenxinxi.txt。先从键盘输入信息存在结构体变量中,再利用fwrite 函数将变量的数据存入文件,利用do-while 循环实现连续输
13、入。在写文件之前有一个判断语句,将文件中的编号与输入的编号比较,若能找到相同的则用 cuntinue 跳过此次输入进入下一轮循环,以此实现限制编号不重复的功能。(二)图书基本信息查询模块定义了五个查询函数,通过选择语句分别进行调用。五个查询函数的算法大同小 异,就 以按 价格 查 询 函 数 加以 说明。定 义一 个 文 件指 针变 量并 指 向 文件jibenxinxi.txt,定义一个变量 count 初值为零,依次输入两个数分别存在min 和 max变量中,若 minmax 则交换两变量的值。利用循环语句和fread 函数将文件信息依次读出并判断是否符合大于min 且小于 max的条件,
14、有符合的则向屏幕输出,并使count 值为 1。若循环结束后 count仍为零则打印“查无此书”。显示全部的查询函数则是不做判断,读文件后直接输出。(三)图书采购模块整个模块最主要的函数是buybook()函数。定义了三个文件指针变量,分别控制基本信息文件、库存信息文件和一个临时文件。首先用了 strcmp()函数查找与输入编号相符的书籍信息,定义了一个变量用于计算金额。确认购买后,对库存信息文件的修改如下:用两个指针分别指向库存信息文件和临时文件,用for 循环将库存文件中的信息逐条读出并且逐条写入临时文件,在for 循环过程中利用if 语句判断,当读到与输入编号相同的那条信息时,增加库存数
15、量之后再写入临时文件,若未读到与输入编号相同的信息,则在for 循环结束后向临时文件添加购买的书籍信息和购买数量,最后以只写方式再次打开库存信息文件并将临时文件的信息写入其中。由此可实现对库存信息文件的修改和添加。(四)图书销售模块此模块最主要的是sellbook()函数。定义了两个文件指针变量,用以控制库存信息文件和临时文件。出售后对库存信息的修改与采购模块的修改方法类似,不同的是当库存为零时可删除库存信息。删除的方法与修改方法类似,依旧利用临时文件,只是当读到与输入编号相同的信息时,库存数量减少后若值为零则直接continue 跳过,不写入临时文件,把临时文件的信息重新导回库存信息文件后则
16、可实现删除目的。名师资料总结-精品资料欢迎下载-名师精心整理-第 8 页,共 29 页 -8(五)利润统计模块由于利润和采购总金额、出售总金额是在采购模块和销售模块就一并计算的,所以此模块只是简单地将这三个变量打印出来。库存信息查询模块此模块是对库存信息文件的查询。定义了一个文件指针变量并指向库存信息文件,利用循环语句和fread函数,将信息逐条存入结构体变量并用printf 打印输出。定义一个 sum变量存储所有信息数量之和,然后输出sum的值即为库存总量。名师资料总结-精品资料欢迎下载-名师精心整理-第 9 页,共 29 页 -9 第五章运行结果主菜单基本信息录入基本信息查询菜单名师资料总
17、结-精品资料欢迎下载-名师精心整理-第 10 页,共 29 页 -10 图书采购菜单购书界面购书纪录查询名师资料总结-精品资料欢迎下载-名师精心整理-第 11 页,共 29 页 -11 图书销售菜单销售界面利润统计界面名师资料总结-精品资料欢迎下载-名师精心整理-第 12 页,共 29 页 -12 库存信息查询界面退出界面名师资料总结-精品资料欢迎下载-名师精心整理-第 13 页,共 29 页 -13 第六章课程设计总结整个系统的开放过程都是我自己完成的,并未求助于学长,更没有抄袭他人的作品。作为一个初学者,由于技术和经验的不足,在程序开发的过程中遇到了各种各样的问题。在程序编写的初期,编译的
18、时候经常会检查出一连串的错误,而且程序运行以后也会出现很多问题,总是不能按照规定要求进行。这其中有很多是非常低级的错误,比如变量的定义没有放在最开始,又如输入实型数据时错用了“%d”,或者用 scanf 函数输入时用了“n”转义字符,导致运行时出现错误而无法继续等等。为此,我不得不把C语言的课本以及上课的笔记拿出来,把那些最基础的知识好好地再看一遍。我发现那些最简单的知识却是最容易被忽略的,也正是最容易让人栽跟斗的,基础要是不牢固那么什么大的程序都是编不好的。在编程的中期,低级错误不断的毛病已经基本能够克服。但是随着编程难度的增加,我遇到了一些比较大的困难,有一些功能无法很好的实现。其中最大的
19、一个问题就是采购和销售模块中对库存量的修改,要实现文件中某条信息的修改和删除。开始只能实现对文件添加纪录,但不能将原来已有纪录进行修改删除,后来翻阅参考资料以及利用网络资源,学习和借鉴了他人的一些思想方法,利用一个临时文件实现了对原文件的修改和删除。但是本人认为此法虽然能实现所需功能,但依旧欠妥,应该还有其他效率更高的方法,有待以后继续思考。还有比如无法实现输入“y”或“n”达到选择控制的目的,后来通过与同学互相交流解决了问题。由此我体会到,自学能力是一项必须具备的重要技能,这是一个人不断充实自我、提高自我、战胜自我的重要途径,而高效的信息获取和资源检索能力又显得尤为重要。在学习的过程中与他人
20、的合作交流也是很有必要的,能达到事半功倍的效果。在编程后期,主要是对系统的调试、功能的完善、细节的修改以及界面的美化。这个过程我也遇到了一些问题。比如增强系统对非法输入的处理能力,借鉴了其他的一些成功案例,做了小小的一些改动实现了我的要求。在后期的调试修改过程中,我也体会到了这个过程对于一个程序的开发有多么重要,程序编好了也许工作只是完成了一半,后期的很多工作需要更多的耐心和细致,行百里者半九十,只有一丝不苟地坚持到最后才能把工作做完美。次程序设计实践给了我很大的锻炼,使我在C语言编程方面能力有了很大的提名师资料总结-精品资料欢迎下载-名师精心整理-第 14 页,共 29 页 -14 高,对编
21、程也有了更为深刻的认识。这是从课堂走向实际生活、从理论学习走向实际运用的一个重要的经历。课程设计也使我对编程产生了更浓厚的兴趣,也让我认识到,要想掌握C语言编程或者说任何一门编程语言,光是上课听老师讲是远远不够的,必须自己亲自动手去编、去想、去解决实际编程中遇到的问题,只有这样才能真正提高自己的编程能力,进而达到熟练掌握的境界。目前我的编程能力还是有待提高的,我的程序在模块化方面就不够完善,我知道在实际的程序项目开发中模块化非常重要,这利于程序的修改以及团队成员的合作工作等。今后,在学习编程的过程中,我要不断地巩固基础知识,多为自己争取项目实践的机会,更好的利用图书馆和网络资源获取信息不断加强
22、自学能力,加强与人合作的团体精神。希望在编程之路上能够取得不断进步。名师资料总结-精品资料欢迎下载-名师精心整理-第 15 页,共 29 页 -15 参考文献1.C 语言程序设计/李丽娟,牛莉主编.北京:中国铁道出版社,2006.7 2.C 语言程序设计实验教程/李丽娟,马淑萍主编.北京:中国铁道出版社,2006.7 3.C 大学教程:第五版/(美)Deitel,P.J.等著;苏小红等译.北京:电子工业出版社,2008.2 名师资料总结-精品资料欢迎下载-名师精心整理-第 16 页,共 29 页 -16 附录(程序源代码)#includestdio.h#includestring.h stru
23、ct book char num10;char bookname30;char author20;char press30;char time10;float price;int amount;inf,book50;struct deal char num10;float price;int amount;float money;deal;float lirun=0,bmoney=0,smoney=0;input()printf(请输入书名:);scanf(%s,inf.bookname);printf(请输入作者:);scanf(%s,inf.author);printf(请输入出版社:);
24、scanf(%s,inf.press);printf(请输入出版日期:);scanf(%s,inf.time);printf(请输入定价:);scanf(%f,&inf.price);output()printf(编号:%sn,inf.num);printf(书名:%sn,inf.bookname);printf(作者:%sn,inf.author);printf(出版社:%sn,inf.press);printf(出版时间:%sn,inf.time);printf(定价:%.2f 元n,inf.price);名师资料总结-精品资料欢迎下载-名师精心整理-第 17 页,共 29 页 -17 b
25、uybook()float bmoney2;FILE*fp1,*fp2,*fp3;char N10,b;int X,i,count=0,count2=0;fp1=fopen(c:C-designjibenxinxi.txt,r);printf(请输入书籍编号:);scanf(%s,N);while(1)fread(&inf,sizeof(inf),1,fp1);if(feof(fp1)break;if(strcmp(inf.num,N)=0)fclose(fp1);/*在基本信息中查找*/count=1;output();printf(n 请输入采购数量:);scanf(%d,&X);bmon
26、ey2=X*inf.price;printf(所需金额为:%.2f 元n,bmoney2);printf(n-确认购买?(y/n)t);scanf(%s,&b);if(b=y|b=Y)fp2=fopen(c:C-designkucunxinxi.txt,r);fp3=fopen(c:C-designlinshi.txt,w);for(i=0;fread(&booki,sizeof(struct book),1,fp2)!=0;i+)if(strcmp(booki.num,N)=0)/*购买后修改库存量*/booki.amount+=X;/*如原来已有纪录则修改原纪录*/fwrite(&book
27、i,sizeof(struct book),1,fp3);count2=1;continue;fwrite(&booki,sizeof(struct book),1,fp3);if(count2=0)/*若尚无纪录则添加纪录*/inf.amount=X;fwrite(&inf,sizeof(inf),1,fp3);名师资料总结-精品资料欢迎下载-名师精心整理-第 18 页,共 29 页 -18 fclose(fp2);fclose(fp3);fp2=fopen(c:C-designkucunxinxi.txt,w);fp3=fopen(c:C-designlinshi.txt,r);for(i
28、=0;fread(&booki,sizeof(struct book),1,fp3)!=0;i+)fwrite(&booki,sizeof(struct book),1,fp2);fclose(fp2);fclose(fp3);fp3=fopen(c:C-designlinshi.txt,w);/*清空临时文件*/fclose(fp3);fp3=fopen(c:C-designbuy.txt,a);strcpy(deal.num,inf.num);deal.price=inf.price;deal.amount=X;deal.money=bmoney2;fwrite(&deal,sizeof(
29、deal),1,fp3);fclose(fp3);lirun-=bmoney2;bmoney+=bmoney2;printf(n*购买成功!*nn);break;elsebreak;if(count=0)printf(n*查无此书!*nn);fclose(fp1);sellbook()float smoney2;FILE*fp2,*fp3;char N10,b;int X,i,count=0;fp2=fopen(c:C-designkucunxinxi.txt,r);printf(请输入书籍编号:);scanf(%s,N);while(1)fread(&inf,sizeof(inf),1,fp
30、2);if(feof(fp2)break;名师资料总结-精品资料欢迎下载-名师精心整理-第 19 页,共 29 页 -19 if(strcmp(inf.num,N)=0)/*在库存中找到后输出欲售书籍信息及数量*/fclose(fp2);count=1;output();printf(库存量:%d本 n,inf.amount);printf(n 请输入出售数量:);scanf(%d,&X);if(Xmax)int t;t=min;min=max;max=t;名师资料总结-精品资料欢迎下载-名师精心整理-第 23 页,共 29 页 -23 while(1)fread(&inf,sizeof(in
31、f),1,fp1);if(feof(fp1)break;if(inf.price=min)&(inf.price=max)count=1;output();printf(n);if(count=0)printf(n*查无此书!*nn);findbook5()FILE*fp1;fp1=fopen(c:C-designjibenxinxi.txt,r);printf(n-图书基本信息-n);while(1)fread(&inf,sizeof(inf),1,fp1);if(feof(fp1)break;else output();printf(n);fclose(fp1);printf(-n任意键继
32、续.n);getch();profit()printf(n*n);printf(目前为止本次的销售情况如下:n);printf(购书共支出:%.2f元n 售书共收入:%.2fn 销售总利润为:%.2f 元n,bmoney,smoney,lirun);printf(n 革命尚未成功,同志仍需努力.n);printf(*nn任意键继续.n);getch();bookstore()名师资料总结-精品资料欢迎下载-名师精心整理-第 24 页,共 29 页 -24 FILE*fp2;int sum=0;fp2=fopen(c:C-designkucunxinxi.txt,r);printf(n-库存信息
33、清单-n);while(1)fread(&inf,sizeof(inf),1,fp2);if(feof(fp2)break;else output();printf(数量:%d 本nn,inf.amount);sum+=inf.amount;printf(-库存总量:%d 本nn 任意键继续.n,sum);fclose(fp2);getch();main()char a;FILE*fp;while(1)printf(n-请选择操作类型-n);printf(1、2、n);printf(3、4、n);printf(5、6、n);printf(0、n请输入(0-6)数字选择:);scanf(%s,&
34、a);if(a=1)printf(n*);printf(n*欢迎进入基本信息录入系统 *);printf(n*n);add();elseif(a=2)printf(n*);printf(n*欢迎进入基本信息查询系统 *);printf(n*n);while(1)名师资料总结-精品资料欢迎下载-名师精心整理-第 25 页,共 29 页 -25 char b;printf(n-请选择查询方式-n);printf(1、2、n);printf(3、4、n);printf(5、0、n 请输入(0-4)数字选择:);scanf(%s,&b);if(b=1)findbook1();elseif(b=2)fi
35、ndbook2();elseif(b=3)findbook3();elseif(b=4)findbook4();elseif(b=5)findbook5();elseif(b=0)break;else printf(n*输入错误!*nn任意键继续.n);getch();elseif(a=3)printf(n*);printf(n*欢迎进入图书采购系统 *);printf(n*n);while(1)char b,c;printf(n-请选择操作类型-n);printf(1、n2、n0、n);printf(请输入(0-2)数字选择:);scanf(%s,&c);if(c=1)do buybook(
36、);printf(-您还要买书吗?(y/n)t);scanf(%s,&b);while(b=y|b=Y);elseif(c=2)名师资料总结-精品资料欢迎下载-名师精心整理-第 26 页,共 29 页 -26 fp=fopen(c:C-designbuy.txt,r);printf(n-历史购买清单-n);while(1)fread(&deal,sizeof(deal),1,fp);if(feof(fp)break;else printf(编号:%sn,deal.num);printf(定价:%.2f 元n,deal.price);printf(购买数量:%d 本n,deal.amount);
37、printf(购买金额:%.2f 元nn,deal.money);fclose(fp);printf(-n任意键继续.n);getch();elseif(c=0)break;else printf(n*输入错误!*nn任意键继续.n);getch();elseif(a=4)printf(n*);printf(n*欢迎进入图书销售系统 *);printf(n*n);while(1)char b,c;printf(n-请选择操作类型-n);printf(1、n2、n0、n);printf(请输入(0-2)数字选择:);scanf(%s,&c);if(c=1)do sellbook();名师资料总结
38、-精品资料欢迎下载-名师精心整理-第 27 页,共 29 页 -27 printf(-您还要卖书吗?(y/n)t);scanf(%s,&b);while(b=y|b=Y);elseif(c=2)fp=fopen(c:C-designsell.txt,r);printf(n-历史出售清单-n);while(1)fread(&deal,sizeof(deal),1,fp);if(feof(fp)break;else printf(编号:%sn,deal.num);printf(定价:%.2f 元n,deal.price);printf(出售数量:%d 本n,deal.amount);printf(
39、出售金额:%.2f 元nn,deal.money);fclose(fp);printf(-n任意键继续.n);getch();elseif(c=0)break;else printf(n*输入错误!*nn任意键继续.n);getch();elseif(a=5)profit();elseif(a=6)bookstore();elseif(a=0)char b;printf(n 确认退出?(y/n)t);scanf(%s,&b);if(b=y|b=Y)printf(nn);printf(*n);名师资料总结-精品资料欢迎下载-名师精心整理-第 28 页,共 29 页 -28 printf(*n);printf(*青山不改绿水长流 *n);printf(*英雄后会有期.*n);printf(*n);printf(*n);getch();exit(1);elseprintf(n*输入错误!*nn任意键继续.n);getch();名师资料总结-精品资料欢迎下载-名师精心整理-第 29 页,共 29 页 -