C语言学生信息管理系统5Word格式文档下载.docx
- 文档编号:19604239
- 上传时间:2023-01-08
- 格式:DOCX
- 页数:20
- 大小:130.85KB
C语言学生信息管理系统5Word格式文档下载.docx
《C语言学生信息管理系统5Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《C语言学生信息管理系统5Word格式文档下载.docx(20页珍藏版)》请在冰豆网上搜索。
◇查找:
可以查找所存在的所有内容;
◇删除:
可以删除多余的记录,输入存在的序号,会自动删除这个记录;
◇修改:
输入要修改的那个人的序号之后,然后再一次输入要修改的内容,包括序号,姓名,QQ,性别,还有电话;
系统会自动进行修改;
◇插入:
既是要插入到某个已存信息的前面,先找到要插入的位置,然后再依次输入要插入的序号,姓名,QQ,性别,还有电话等,即可完成插入程序,
本系统由一个图来表示为:
主菜单
●主体轮廓
#include<
stdio.h>
stdlib.h>
string.h>
intnum;
/*学生学号*/
charname[10];
/*学生姓名*/
charqq[10];
/*学生QQ*/
intsex;
/*学生性别*/
intphone;
/*学生电话*/
}LIST;
LISTL[100];
intmain(void)
{
}
voidrevise_list()/*修改数组*/
voidprint_list()/*列出菜单*/
voiddelete_list()/*删除文件*/
voidinsert_list()/*创建文件*/
voidfind_list()/*查找文件*/
voidinto_list()/*插入文件*/
voidsave_list()/*保存文件*/
这样一个简单的学生信息管理系统的整体轮廓就出来了,以后的内容就是对各个子函数进行完善,编程,最后整体与部分连接起来就完成了整个程序。
●部分工作流程图
1删除:
删除用户和信息
2查找:
可以找到并显示所要查找的已存信息
3插入:
可以插入到任意一项的前面
④显示:
显示出所有已存的信息
4源程序代码
#defineEXIT-1
#defineLENsizeof(structlist)
intkey=0;
typedefstructlist{
intnum;
{inti,j,k;
charname[10];
charqq[10];
intsex;
intphone;
printf("
请选择修改项"
);
scanf("
%d"
&
j);
for(k=0;
k<
key;
k++)
{if(j==L[k].num)break;
您要修改成为:
"
\t\t学号\t\t"
num);
\t\t姓名\t\t"
%s"
name);
\t\tQQ号\t\t"
qq);
\t\t性别\t\t"
sex);
\t\t电话\t\t"
phone);
L[k].num=num;
strcpy(L[k].name,name);
strcpy(L[k].qq,qq);
L[k].sex=sex;
L[k].phone=phone;
inti;
for(i=0;
i<
i++)
{
学号\t姓名\TQQ号\t性别\t电话\t\n"
%d\t%s\t%s\t%d\t%d\n"
L[i].num,L[i].name,L[i].qq,L[i].sex,L[i].phone);
}
if(key==0)
theshuzuisNULL!
\n"
{inti,j,k;
您要删除的是:
}
if(k>
=key)printf("
您输入的数据有误,请重新输入:
for(i=k;
L[i]=L[i+1];
key--;
voidinsert_list()/*创建文件*/
\t\t序号\t\t"
L[key].num=num;
strcpy(L[key].name,name);
strcpy(L[key].qq,qq);
L[key].sex=sex;
L[key].phone=phone;
key++;
{inti,num;
请输入你要查找的序号:
for(i=0;
{if(L[i].num==num)
{printf("
序号\t姓名\t企鹅\t性别\t电话\t\n"
break;
if(i>
无此人信息,请重新选择:
{
inti,j,k;
\t\t\t您要插入项是:
\t"
if(j>
0&
&
j<
=key)
{for(i=key;
i>
=j;
i--)
L[i]=L[i-1];
请输入你要插入的内容:
k=j-1;
elseprintf("
error"
voidsave_list()/*保存文件*/
{inti;
FILE*fp;
if((fp=fopen("
file.txt"
"
wb"
))==NULL)
不能打开文件\n"
return;
{if(fwrite(&
L[i],LEN,1,fp)!
=1);
fclose(fp);
intmain(void)/*主函数*/
intchoice;
do{
\n\n\n\t\t\t********学生信息管理系统********"
\n\t\t\t\t***********==**********\n"
\t\t\t\t1.****修改****\n"
\t\t\t\t2.****列出****\n"
\t\t\t\t3.****.删除*****\n"
\t\t\t\t4.*****创建*****\n"
\t\t\t\t5.*****查找*****\n"
\t\t\t\t6.*****插入*****\n"
\t\t\t\t7.*****保存*****\n"
\t\t\t\t0.*****退出******\n"
\t\t\t\t请选择:
choice);
switch(choice)
case1:
revise_list();
case2:
print_list();
break;
case3:
delete_list();
case4:
insert_list();
case5:
find_list();
case6:
into_list();
case7:
save_list();
case0:
exit(0);
default:
printf("
inputagain~\n"
}while
(1);
fflush(stdin);
getchar();
return0;
5系统调试出现的问题
在这次的实训中,主要遇到的问题是编译环境的不同对程序也不同。
本来我们的程序是不支持在VC++里面编译的,因此一直都处在编译失败,该函数未定义的错误中。
后来经过老师的指导,终于找到了根源,就是把“clrscr()”改为“system("
cls"
)”就可以了。
6系统运行
1主菜单
2创建数组
3列出表格
4删除信息
5修改信息
6查找信息
7插入信息
8保存信息
7实训总结
这次的程序实训是对我们大一后半学期所学的计算机C语言的一次总结,也是对程序分析及操作的一次大的检查,自己独立思考,自己动手和老师辅助解决问题,在实训期间,我发现了自己对这门课的生疏和不足,平时没有学好的东西充分的体现了出来。
归纳总结:
7.1实训中遇到的问题及解决方法:
在整个程序的编排中,整体还算顺利,但是难免在这个过程中会遇到一些麻烦,遇到问题时,去问一些同学,去上网XX一下。
经过实践练习,最终克服了这些问题,主要是指针方面和文件保存这些方面存在的一些问题。
7.2设计中的不足之处:
由于自己初学C程序设计,所以对一些知识掌握的不够全面,不够扎实;
所以编写的一些代码比较基础化,没能用到最完善的方法,例如没有用到链表等方面知识。
7.3感想和心得体会:
经过这次的实训实践,发现了自己在C程序设计方面掌握知识还是不够全面,
知道了自己掌握的知识还是比较基础化,尽管那些基础方面的知识掌握的还算可以,但是那是远远不够的,要想在这方面有好的发展,就需要再扩宽自己的知识面,使自己吸取到它的精华,这就需要我们多看一些这方面的书籍,使自己更加深入的了解。
通过这次实训也知道的自己的真实水平还是远远不够,以后还需更加努力。
8
参考资料:
《C程序设计》(第三版)
谭浩强
清华大学出版社
《C语言精彩编程百例》
温海、张友、童伟
中国水利水电出版社
《程序设计基础》
孙承爱
《C程序设计实训教程》
杨金龙
科学出版社
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 学生 信息管理 系统
![提示](https://static.bdocx.com/images/bang_tan.gif)