欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    C语言课程研究设计报告书Word格式文档下载.docx

    • 资源ID:8646827       资源大小:315.25KB        全文页数:30页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    C语言课程研究设计报告书Word格式文档下载.docx

    1、每一条记录包括一个学生的学号,姓名,性别,年龄,住址,成绩.系统的各个功能模块都用函数的形式来实现;可以将学生信息保存在文件中,并从文件中读取出来。本程序是由C语言的基本单位函数来设计实现与其功能的多次使用函数调用以及函数的嵌套调用。本程序分为8个模块,可以处理多个学生信息的输入、添加、删除,修改等问题。本程序的使用特别方便,每做完一个模块,下面都有提示信息。使用环境为Win-Tc。(2)创建该学生信息管理系统目的就是能够对学生基本信息进行创建、追加、查询、修改等功能,这样可以简化许多人工做起来很复杂的问题。(3)该学生基本信息管理系统是在WIN-TC中文简体环境下运行。该系统要测试的数据如下

    2、:输入模块:(输入3个学生信息)序号: 001姓名:张三 性别:男 年龄:20 成绩:90 002 姓名:李斯 性别:19 成绩:87 003 姓名:王美 性别:女 年龄:82添加模块:(再加1个信息) 004 姓名:赵灵 性别:89查询模块:(查询成绩的基本信息) 分:按学号查询和按成绩查询四、概要设计(1) 主函数主要模块结构图:(2)模块功能详细说明:A、创建模块:此模块可以连续输入若干个学生的资料,若学生数少于该数,则可以在输入学号处输入e 便可退出此模块,并把输入的信息保存到c:stud文件中。 B、追加模块:此模块中先打开c:stud统计文件中的学生,后输入要添加的学生的学号,系统

    3、确认此学号在c:stud不存在时开始纪录新学生的资料,否则输出“此学号已存在!”,以便清楚使用者。C、查询模块:此模块中使用者可以用3种方式查询学生成绩。分别为(1)按学号查询(2)按姓名查询(3)按成绩查询。在这里以按学号查询为列:先选择按学号查询,输入要查询的学生的学号,系统确认此学号在c:student存在后读取信息并在屏幕上输出学生纪录。D、修改模块:此模块中可以修改一门科的成绩也可以同时修改四门科的成绩。修改完毕后输入1 可以继续修改,输入0 则退出此模块。E、删除模块:此模块中用到的删除原理为覆盖要删除的学生的资料。过程简述,先输入要删除的学生的学号,系统找到此学生的信息后给它复制

    4、下一个学生的信息,给下一个学生的纪录复制下下一个学生的信息,一直到最后一个学生的信息复制给倒数第二个学生的信息为止。然后文件中的学生总数减一。F、此模块较简单,先统计文件c:student中的学生个数,后把每个学生的各门科的成绩加起来,然后总成绩除以学生总数,屏幕上输出各科的平均成绩。G、排序模块:在此模块中可以按2种方法进行排序 ,分别为(1)按学号排序(2)按平均成绩成绩排序。输出时以从小到大的循序进行输出。(3)模块功能说明1 输入功能:可以一次完成N条记录的输入。2保存功能:保存已输入信息。3读取功能:读取已输入信息。4打印功能:完成全部学生记录的显示。5 更新功能:更新学生 的信息。

    5、6查询功能:查询学生信息并显示。7 统计功能:统计学生信息并显示。8排序功能:根据学号,平均成绩排序。0退出系统。五、详细设计及运行结果(1)各主要模块的程序流程图删 除 模 块:排序模块:( 2 ) 函数之间相互调用的图示:(3)主要函数之间相互调用如下:六 调试情况,设计技巧及体会经过两周的实习时间,我用文件建立了一个应用系统程序,形成系统软件。此程序结构简单明了,让人一目了然,便于对程序的阅读和理解。同时操作起来也比较方便简单。又由于增加链表更增强了系统的灵活性。通过对此程序的编写,让我把书本上学到的应用到实际中去,但在编出程序的雏形后,再进行编译时出现了许多错误和警告。这才让我认识到理

    6、论和实践是存在一定差别的。最后,在多次查阅资料,询问同学后把程序给改编完成了。它让我体会到自己的不足,所以自己以后要踏踏实实地把计算机年学好,为自己将来的发展打下坚实基础。在此次程序编写中,发现的问题有:1函数应该是先定义后使用,所以一开始时,总是出现很多警告,说没有定义!后来经过仔细检查,发现主函数应该是放在各个模块之后!2要注意全局变量的应用,若全局变量没定义好的话,对整个程序的编写与都有很大影响!3在删除模块中,刚开始存在很多问题,删除不了,或者删除后还能打印出来,结果后来发现是删除模块本身的问题。(该块较难处理)4在查询模块中,刚开始那个按商品类别查询无法运行,经检查,是由于未定义成字

    7、符串数组形式,因此定义变量的类型非常重要。5特别要注意的问题是循环的初值,循环的控制变量,循环的条件!dowhile的循环在这个程序中多次运用!6说明如下:( 1 )、调试情况和设计技巧:a.刚开始没有那个初始化函数,程序运行后没有输入任何数据就试得去执行显示功能,结果显示的是一些乱码!加入初始化函数后,这种现象也随之消失。b. 在输入函数中设了最大值,可以输入66个学生的成绩信息,当输入字母e时停止,并保存信息。c. 在没有输入任何信息的情况下,不能执行查询、修改、删除、统计、排序功能 。本程序分为8个模块,分别为(1)创建学生信息。(2)保存学生信息。(3)读取学生信息。(4)更新学生信息

    8、。(5)查找学生信息。(6)统计学生的成绩(7)对学生的资料进行排序。本程序可以处理多个学生的成绩的输入、添加、修改、排序等问题。此程序的不足之处在学生基本信息方面还不够完善,另一方面就是在运行此程序时,需要执行操作的提示语不够具体和完善.改进方法: 可以在学生基本信息的结构体中添加更多的学生信息,使得学生信息更加完善,此外,还可以在编程时加一些必要的提示语,用printf(“”)。 语句直接可输入.(2)、在设计过程中的感受:首先经过两周的编程实习,并在后一段的报告总结,我对C语言这门科有新的认识,本人实在是获益不浅!要想编写一个准确、高效并有使用价值的程序,一定先要对课本知识熟悉,还要掌握

    9、必要的上机操作能力,写程序其实很容易而关键在于调试程序。这次设计,让我重新掌握了C语言,而且还得到了用C语言解决实际问题的宝贵经验。其次, 通过此次编程我也发现了自己在学习中的错误和不足,复习了以前学过的知识。同时也学到了一些没学过的知识,让我从中收益非浅,也为期末考试准备了一下!更重要的是培养了独立思考问题和解决问题的能力,熟悉了一些基本操作和解决问题的方法!第三, 因为初次接触等原因此次设计遇到了许多问题,我深刻体会到老师发挥的重要作用,C语言程序对我们来说比较难,在匆忙的学习中更是难上加难,似乎觉得自己仅是个匆匆过客,但在老师的帮助下我学会了如何调试,如何查找系统没有提示的错误,最后终于

    10、排除万难把程序搞定,体会到原来编程也挺有意思的快感.我想没有老师的帮助我很难在短期内把程序设计做的这样好,在此特地感谢老师的帮助。七、源程序清单(略,详见电子版实验报告)#include string.h#define N 20#define PAGE 2#define PRINT1 printf(nname-sex-age-class-num-plants-score-birthday- add-phonen)#define PRINT2 printf(n %s %s %d %d %d %s %d%d%d,studenti.name,studenti.sex,studenti.age,stu

    11、denti.class,studenti.num,studenti.plants,studenti.exam.chinese,studenti.exam.math,studenti.exam.english)#define PRINT3 printf( %d %d %d %d %s %.0lfn,studenti.exam.aver,studenti.birthday.year,studenti.birthday.month,studenti.birthday.date,studenti.add,studenti.telephone)int sum。 /*ji lu xue sheng de

    12、ren shu*/struct data int year。 int month。 int date。struct score int chinese。 int math。 int english。 int aver。struct student_type char name20。 char sex20。 char add20。 char plants20。 /*ban ji zhi wu*/ char score20。 int num。 int class。 int age。 int R。 double telephone。 struct data birthday。 struct scor

    13、e exam。 /*kao shi cheng ji*/studentN。input_message() /*shu ru xin xi*/ int i=0。 char choice。 int flag。 double f。 clrscr()。 printf(nn input studentsinformation(the most is %d) n,N)。 do printf(n number %ds information,i+1 )。n students name: )。 scanf (%s,studenti.name)。s sex:,studenti.sex)。s age:%d,&st

    14、udenti.age)。s class:studenti.class)。s num: scanf(studenti.num)。s plants:,studenti.plants)。s cheng ji:%d%d%dstudenti.exam.chinese ,&studenti.exam.math ,&studenti.exam.english)。s aver cheng ji:, &studenti.exam.aver)。s shengri:%d %d %dstudenti.birthday.year, &studenti.birthday.month,studenti.birthday.d

    15、ate)。s add:,studenti.add)。n stduents phone:%lff)。 studenti.telephone=f。ndo you want to continue(Y/N) choice=getch()。 if(choice=y|choice=Yn continue!n i+。 flag=1。 else flag=0。 while(flag=1)。n %d stuentsinformation input had been end!,i )。 sum=i。n push any button to go away! bioskey(0)。save_message(in

    16、t sum) /*保存信息*/ FILE *fp。 int i=0。 if(fp=fopen(student.txt,wb)=NULL)read message wrong! return 0。 for(i=0。i=sum。i+) if(fwrite(&studenti,sizeof(struct student_type),1,fp)!=1)write message wrong! fclose(fp)。read_message() /*读取信息*/rbnn *now,there are no any information in file n please push any button

    17、to goaway!*n return。 while(feof(fp)! fread(&studenti,sizeof(struct student_type),1,fp)。 if(studenti.num=0) break。 else i+。 return(i)。output_message() /*显示信息*/ int i=0,page=1。 int j=0。nn -students information- page%dnn, page )。 PRINT1。 if(studenti.num!=0) j+。 if(j%PAGE! PRINT2。 PRINT3。 else if(studen

    18、ti+1.num!push any button to continuenn -students information- page%dnn ,+page)。 while(studenti.num!=0)。push any button to go awayinsert_message() /*添加信息*/ int i=sum。 int flag=0。nn insert s students informationn studenti.num=+sum。n new studnet num: %d ,studenti.num)。studenti.name)。studenti.sex)。stude

    19、nti.plants)。s score:%d %d %d %dstudenti.exam.chinese,studenti.exam.math,studenti.exam.english,s birthday:studenti.birthday.year,&s telephone:studenti.telephone)。studenti.add)。 sum+。n do you want to continue?(Y/N)n push any button to go away int del_by_name() char del_name20,i,f=0。 nn please input th

    20、e student name:,del_name)。sum。 if(strcmp(studenti.name,del_name)=0) studenti.num=-1。 %s student information have been deleted! f=1。 break。 if(f=0) nn*cannot find the student!*nn getchar()。int del_by_num() int del_num=0,i,f=0。nn please input the student num:del_num)。 if(studenti.num=del_num)the stude

    21、nts information have been deleted! nn *cannot find the student! del_message() int choice。 *delete students information*nn 1.delete by namenn 2.delete by numnn 0.retrun menunn please choose (0-2):choice)。 switch(choice) case 1: del_by_name()。break。 case 2: del_by_num()。 case 0: while(choice! return 1。revise_message()


    注意事项

    本文(C语言课程研究设计报告书Word格式文档下载.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开