计科113《C语言程序设计》课程设计报告Word格式.docx
《计科113《C语言程序设计》课程设计报告Word格式.docx》由会员分享,可在线阅读,更多相关《计科113《C语言程序设计》课程设计报告Word格式.docx(19页珍藏版)》请在冰豆网上搜索。
3、函数功能介绍3
4、设计体会及总结4
参考文献:
4
附录一:
5
1、系统功能和结构
1.1系统设计目的
作为C#课程结课设计,验证自身的学习效果,同时希望利用所学的基本知识和技能,进行简单数据库应用程序设计。
希望通过项目实践,熟悉巩固所学知识,以使自身达到熟练掌握.NET基本结构以及C#语言的基本知识和技能,基本掌握面向对象程序开发的基本思路和方法,了解ADO.NET数据库开发基本知识,为今后的进一步深入学习,奠定基础。
学生管理系统的开发目的是为了实现学生课程、学籍的信息化管理。
本系统需要完成的功能有:
班级管理、学生管理、科目管理、课程管理、成绩管理以及系统管理员才具有的教师管理和用户管理。
本系统可以能减少很多不必要的资源,不用象以前那样用冗余的张式的理。
大节省了学校能源。
并且计算机的存储与快速查询功能大大提高了学籍管的效率,并且还提高了学籍信息管理的精确度。
方便快速的操作,可减少学籍信息管理的漏洞,又减少因工作的冗余出现的错误,并且操作非常简单,可减少许多不很必要的人员,这无论从物质上还是工作人员的工资上都为学校节约了开支。
为学校增加了财富。
数据库分析
用户需求具体有学籍管理系统提供保存、更新、查询、维护,这就需求数据库结构能充分满足各种信息的输入与输出,实现有组织地、动态地存储大量关联数据,方便用户访问系统中的数据,它与文件系统的重要区别是数据的充分共享,交叉访问,与应用程序的高度独立性。
学生管理系统是各大中专院校不可缺少的一部分,它主要包括用户登录、学生信息输入修改、学生信息查询以及学生成绩输入、学生成绩查询、系统用户管理等几个页面,因而该系统具有较强的实用性。
1.2系统功能分析
1.输入学生信息
2.显示学生信息
3.查找学生信息
4.删除学生信息
5.插入学生信息
6.结束
1.3系统结构分析
2、核心技术介绍
voidmain()
{
intchange;
do{
system("
cls"
);
printf("
=========================**学生信息管理系统**================================\n"
===============欢迎使用============="
\n温馨提示:
为保证您的操作得到保存,请按正常顺序退出系统\n"
\t\t1:
输入学生信息\n"
\t\t2:
显示学生信息\n"
\t\t3:
查找学生信息\n"
\t\t4:
删除学生信息\n"
\t\t5:
插入学生信息\n"
\t\t6:
排序学生成绩\n"
\t\t0:
退出程序\n"
fflush(stdin);
\t\t请输入功能选项:
"
scanf("
%d"
&
change);
switch(change)
case1:
shuru();
break;
case2:
xianshi();
case3:
chazhao();
case4:
shanchu();
case5:
charu();
case6:
paixu();
case0:
break;
}
getch();
}while(change!
=6);
}
3、函数功能介绍
输入数据
\n请输入学号:
st[i].id);
\n请输入姓名:
gets(st[i].name);
\n"
);
请输入年龄:
st[i].age);
\n请输入姓别:
gets(st[i].sex);
\n请输入生日:
gets(st[i].birthady);
\n请输入电话:
st[i].tel);
\n请输入籍贯:
gets(st[i].nativeplace);
\n是否继续输入另外一个学生信息?
(y/n)"
a=getchar();
i++;
}while(a=='
y'
&
&
i<
=50);
显示信息
intj;
\t学号\t姓名\t年龄\t性别\t生日\t\t电话\t籍贯\n"
for(j=0;
j<
i;
j++)
\t%d\t%s\t%d\t%s\t%s\t%d\t%s\n"
st[j].id,st[j].name,st[j].age,st[j].sex,st[j].birthady,st[j].tel,st[j].nativeplace);
voidpaixu()//按年龄从大到小排序函数
intj,k;
inttemp;
for(k=0;
k<
i-1-j;
k++)
if(st[k].age<
st[k+1].age)
temp=st[k].age;
st[k].age=st[k+1].age;
st[k+1].age=temp;
//排序后输出
voidchazhao()
intm;
charname[20],b;
do
printf("
\n请输入想查找的学生姓名:
fflush(stdin);
gets(name);
for(m=0;
m<
m++)
{
if(strcmp(name,st[m].name)==0)
\n\t您查找的学生在第%d个位置找到了!
!
m+1);
}
if(m>
=20)
\n\t没有找到这个学生!
else
st[m].id,st[m].name,st[m].age,st[m].sex,st[m].birthady,st[m].tel,st[m].nativeplace);
\n是否查找另一个学生的信息?
b=getchar();
}while(b=='
voidshanchu()
charname[20],c;
inta,b;
\n请输入要删除的学生姓名:
gets(name);
for(a=0;
a<
a++)
if(strcmp(name,st[a].name)==0)
for(b=a;
b<
b++)
st[b]=st[b+1];
if(a>
i)
\t没有找到这个学生!
else
i--;
\n是否继续删除另一个学生信息?
(y/n)"
c=getchar();
}while(c=='
voidcharu()
执行
voidmain()//主函数
4、设计体会及总结
经过这次实习系统设计,自己总结了这个学生信息管理系统的一些问题,不过收获还是颇为丰富的,再有理论知识上结合实践,使我学到了更多。
首先,更进一步的了解了数据库的基本操作,在这之前,数据库的学习仅仅刚开了个头,我们只是在了解一些概念性的东西。
在做这个系统之前,我连基本的连接数据库,配文件DSN,数据库查询语句等这些东西都不熟练。
现在对于数据库的增删改查操作比较熟练了,对于初学者来说,比较头疼的就是对于单引号的处理。
我的建议是如果不理解先把按照课本上正确的语句敲,然后在多次进行数据库的链接,增删改查操作中不断总结规律。
这次设计的学生信息管理系统,全在自己所掌握的知识下,进行编程设计,完全体现了自己在数据库语言和程序设计课程学习状况,充分地为自己以后更深入了数据库语言奠下深厚的基础。
纵观此学生信息管理系统的整体概况,目前,自我认为设计良好,相关功能都能够实现,功能强大,条理清晰,界面可观性比较好。
并且特色在于,所设计的表单都在一个表单系统桌面中运行,比较符合系统的观念。
在系统设计的过程中,我从中发现,学习数据库要细心和有耐性,并