ImageVerifierCode 换一换
格式:DOCX , 页数:19 ,大小:279.54KB ,
资源ID:18017935      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/18017935.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C语言课程设计学生信息管理系统设计报告Word下载.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

C语言课程设计学生信息管理系统设计报告Word下载.docx

1、对数据进行保存,用save函数向文件中写入数据实现该功能。7、退出程序五、调试方法以及测试过程中的问题及解决方法调试方法:逐条的对程序中的错误进行修改;修改程序中的变量、声明新函数以及声明头文件对函数进行调试。测试过程中遇到的问题:1、删除学生信息功能不能实现。 问题描述:在选择删除功能后不能把选择的学生信息删除,而总是删除其他学生的信息。 解决办法:出现这个问题肯定是数据覆盖的时候出现了错误,也就是循环出现了错误。检查循环程序后发现,循环体内数据交换出现了错误,没有定义结构体变量。重新定义结构体变量后问题解决了。2、显示结果时候出错每一个功能在现实结果现实的信息部完整,部分信息部能现实或被覆

2、盖。现实出错也就是printf语句中的结构没有排列好所导致的。检查所有的Printf语句后发现所有的printf语句中少输出了以个语文成绩,且它们不能完全对齐。在增加了“语文”,修改了转义字符以及空格后,问题解决了。3、在查询信息的时候出错在输入不在文件中保存的姓名、学号时,没有信息提示。出现此问题说明if语句后少了一条else语句,加上该语句后,显示的结果正确了。4、打开文件出错当显示保存成功后关闭程序。重新打开程序选择打开文件后,文件不能正常打开,或打开文件后没有显示结果。查看文件文件中有数据,说明文件在保存的是后没有出错。再仔细观察运行结果后,发现该函数在执行到循环输出的时候把该循环跳了

3、过去没有执行。出现此问题是因为循环的终止条件改变了。将openl函数该为有返回值函数之后,重新定义了一个see函数来调用openl函数,并在see函数中用循环输出已经打开的文件中的数据。重新定义一个函数后保存的文件可以成功的打开。5、在排序后没有保存文件在order函数后边加上了printf(是否保存?(y or n); getchar(); scanf(%c,&a); if(a=y) save(); else printf(退出语句后可以选择是否保存排序后的文件。六、设计心得 通过一个星期的课程设计,我更深刻的了解了C语言中每个函数的含义,领会了算法是C语言的灵魂这句话的真谛。一个好的算法可

4、以使程序简洁,运行速度更快。同时也对C语言中的循环,函数的调用有了更深的理解。虽然这次的课程设计,老师已经给出了程序让我们改错。看起来比较容易,但是要让程序实现要求的几个功能却不是很容易。而且要看懂每一个函数也不是十分的容易。在修改程序的过程中也收获了很多以前忽略的东西。在修改的过程中巩固了基础,认识了自已以前常犯得错误,也发现了自己的不足之处。在程序编写中,我认识编写一个系统不仅仅要有良好的用户界面,良好的程序编写风格也是相当重要的。只有良好的种程序编写风格,程序代码的可读性才会好,开发的复杂度才能大大减少,检查错误、修改代码时才会更加容易下手。通过实际操作,学会 C语言程序编程的基本步骤、

5、基本方法,开发了自己的逻辑思维能力,培养了分析问题、解决问题的能力。深刻体会到了团队协作的重要性。七、程序代码#includestdio.hconio.hstring.hstdlib.hvoid look(); /*声明查看函数*/void save(); /*声明保存函数*/void search_name(); /*声明按姓名查看函数*/void search_number(); /*声明按学号查看函数*/void order(); /*声明排序函数*/void del(); /*声明删除函数*/int openl(); /*声明打开函数*/void welcome(); /*声明我的个人

6、信息函数*/void type(); /*声明输入函数*/void see(); /*声明打开并查看文件函数*/struct student /*定义学生信息的结构体类型*/ char num15; /*学号*/ char name20; /*姓名*/ char sex4; /*性别*/ int english; /*英语成绩*/ int math; /*数学成绩*/ int chinese; /*语文成绩*/ float aver; /*平均成绩*/ float sum; /*总成绩*/stu100;int n; /*声明一个全局变量*/void main() /*主函数即用户的操作界面*/

7、 system(color 1E /*设计文本颜色*/ int b,flag=0; /*声明局部变量*/ while(1) /*循环输出以下信息*/ printf(nttt欢迎来到学生成绩管理系统!nntttt 郗绿阳制作nttt-nttt1.键入学生的信息nn /*键入学生的信息*/ttt2.查看录入的学生信息nn /*查看录入的学生信息*/ttt3.按姓名查看学生的信息nn /*按姓名查看学生的信息*/ttt4.按学号查看学生的信息nn /*按学号查看学生的信息*/ttt5.按平均成绩排序nn /*排序*/ttt6.删除学生信息nn /*删除学生信息*/ttt7.保存学生信息nn /*保存

8、*/ttt8.打开文件nn /*打开文件*/ttt9.我的个人信息nn /*我的个人信息*/ttt0.退出nn /*退出*/ttt请输入你的选择: scanf(%db); switch(b) case 1:type();break; /*调用键入学生信息函数*/ case 2:look(); /*调用查看函数*/ case 3:search_name(); /*调用姓名查看函数*/ case 4:search_number(); /*调用学号查看函数*/ case 5:order(); /*调用排序函数*/ case 6:del();/*调用删除函数*/ case 7:save();/*调用保

9、存函数*/ case 8:see();/*调用打开文件函数*/ case 9:welcome();/*调用我的个人信息函数*/ case 0:flag=1;/*退出SWITCH语句*/ default :错误! if(flag) break; /*如果选择0就退出循环*/ void welcome() /*我的个人信息函数*/ system(CLSnntt-个人信息- /*在屏幕上输出一下信息*/nnnntt姓名:郗绿阳tttSex:男ntt年龄:20nnttt-学习经历-nnntt小学:北大小学nntt初中:禹州市神垕一中nnttS高中:禹州五高nntt大学:洛阳理工学院nnnntt按任意键

10、返回欢迎屏幕! getch(); /*按任意键返回主函数*/void type() /*定义键入学生信息函数*/ int i; /*定义局部变量*/tt输出你想输入的学生信息个数: scanf(n); for(i=0;in;i+) /*输入每个学生的信息*/nttt-nttt学号:%sstui.num); /*输入学号*/ttt姓名:stui.name); /*输入姓名*/ttt性别:%Sstui.sex); /*输入性别*/ttt英语:stui.english); /*输入英语成绩*/ttt数学:stui.math); /*输入数学成绩*/ttt语文:stui.chinese); /*输入语

11、文成绩*/stui.aver=(float)stui.english+(float)stui.math+(float)stui.chinese)/3;/*计算平均成绩*/stui.sum=(float)stui.english+(float)stui.math+(float)stui.chinese;/*计算总成绩*/ttt平均成绩=%4.1fn,stui.aver); /*输出平均成绩*/ttt总成绩=%4.1fn,stui.sum); /*输出总成绩*/nnttt按任意键返回菜单!void save() /*建立保存文件函数*/FILE *fp; /*定义文件型指针*/ if(fp=fop

12、en(student.txt,wb)=NULL) /*打开输出文件*/不能打开文件! return; /*终止程序*/i+) /*向student文件中写入信息*/ if(fwrite(&stui,sizeof(struct student),1,fp)!=1) printf(文件写入错误n fclose(fp); /*关闭文件*/nnnnttt学生信息保存成功!nnnnttt按任意键返回菜单!void look() /*定义查看函数*/ /n=openl(); /*调用openl函数*/t学号t姓名t性别t英语t数学t语文t平均成绩t总成绩ni+) /*输出所有的学生信息*/%10st%st

13、%2st%dt%dt%dt%3.1ftt%6.1fn,stui.num,stui.name, stui.sex,stui.english,stui.math,stui.chinese,stui.aver,stui.sum);nnnttt按任意键返回菜单void search_name() /*按姓名查看函数*/ /*声明字符数组*/ttt请输入学生姓名:,name);i+) if(strcmp(stui.name,name)=0) /*将输入的姓名与结构体中的姓名进行比较*/ stui.sex,stui.english,stui.math,stui.chinese,stui.aver,stui

14、.sum);void search_number() /*定义按学号查看函数*/ char number15;ttt请输入学号:,number); if(strcmp(stui.num,number)=0) /*将输入的学号与结构体中的学号进行比较*/void order() /*定义排序函数*/ int i,j; char a; struct student temp; /*声明结构体变量*/i+) /*对数据进行排序*/ for(j=i+1;jj+) if(stui.sumstuj.sum) temp=stui; stui= stuj; stuj=temp; getchar(); if(a

15、=) /*是否保存排序后的文件*/ save(); elsevoid del() /*定义删除学生信息函数*/ttt输入学生名字: if(strcmp(stui.name,name)=0) getch();真的删除? getchar(); scanf( if(a=) /*是否删除该信息*/ for(; stui=stui+1; n=n-1; printf(你已经删除信息 else getch();int openl() /*定义打开文件函数*/system( FILE *fp;rb)=NULL)Cannot open file.n exit(0);feof(fp); fread(&stui,sizeof(struct student),1,fp); return(i-1);void see() /*打开并查看文件*/ n=openl();文件打开成功!按任意键查看!八、运行结果菜单屏幕输入学生信息查看学生信息按姓名查询按学号查询按平均成绩排序删除学生信息保存文件打开文件我的个人信息

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1