计科113《C语言程序设计》课程设计报告.docx
- 文档编号:3233687
- 上传时间:2022-11-20
- 格式:DOCX
- 页数:19
- 大小:318.77KB
计科113《C语言程序设计》课程设计报告.docx
《计科113《C语言程序设计》课程设计报告.docx》由会员分享,可在线阅读,更多相关《计科113《C语言程序设计》课程设计报告.docx(19页珍藏版)》请在冰豆网上搜索。
计科113《C语言程序设计》课程设计报告
宁波工程学院
2011~2012学年第二学期
电信学院
C语言课程设计报告
题目:
学生信息管理系统
班级:
计科113
姓名:
学号:
指导教师:
2012年3月
目录
目录2
1、系统功能和结构3
1.1系统设计目的3
1.2系统功能分析3
1.3系统结构分析3
2、核心技术介绍3
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");
printf("===============欢迎使用=============");
printf("\n温馨提示:
为保证您的操作得到保存,请按正常顺序退出系统\n");
printf("\t\t1:
输入学生信息\n");
printf("\t\t2:
显示学生信息\n");
printf("\t\t3:
查找学生信息\n");
printf("\t\t4:
删除学生信息\n");
printf("\t\t5:
插入学生信息\n");
printf("\t\t6:
排序学生成绩\n");
printf("\t\t0:
退出程序\n");
fflush(stdin);
printf("\t\t请输入功能选项:
");
scanf("%d",&change);
switch(change)
{
case1:
shuru();break;
case2:
xianshi();break;
case3:
chazhao();break;
case4:
shanchu();break;
case5:
charu();break;
case6:
paixu();break;
case0:
break;
}
getch();
}while(change!
=6);
}
3、函数功能介绍
输入数据
printf("\n请输入学号:
");
scanf("%d",&st[i].id);
fflush(stdin);
printf("\n请输入姓名:
");
gets(st[i].name);
printf("\n");
printf("请输入年龄:
");
scanf("%d",&st[i].age);
fflush(stdin);
printf("\n请输入姓别:
");
gets(st[i].sex);
fflush(stdin);
printf("\n请输入生日:
");
gets(st[i].birthady);
printf("\n请输入电话:
");
scanf("%d",&st[i].tel);
fflush(stdin);
printf("\n请输入籍贯:
");
gets(st[i].nativeplace);
printf("\n是否继续输入另外一个学生信息?
(y/n)");
fflush(stdin);
a=getchar();
i++;
}while(a=='y'&&i<=50);
}
显示信息
intj;
printf("\t学号\t姓名\t年龄\t性别\t生日\t\t电话\t籍贯\n");
for(j=0;j
printf("\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(j=0;j
{
for(k=0;k { if(st[k].age { temp=st[k].age; st[k].age=st[k+1].age; st[k+1].age=temp; } } } xianshi();//排序后输出 } voidchazhao() { intm; charname[20],b; do { printf("\n请输入想查找的学生姓名: "); fflush(stdin); gets(name); for(m=0;m { if(strcmp(name,st[m].name)==0) { printf("\n\t您查找的学生在第%d个位置找到了! ! ! \n",m+1); break; } } if(m>=20) printf("\n\t没有找到这个学生! ! ! \n"); else { printf("\t学号\t姓名\t年龄\t性别\t生日\t\t电话\t籍贯\n"); printf("\t%d\t%s\t%d\t%s\t%s\t%d\t%s\n", st[m].id,st[m].name,st[m].age,st[m].sex,st[m].birthady,st[m].tel,st[m].nativeplace); } printf("\n是否查找另一个学生的信息? (y/n)"); fflush(stdin); b=getchar(); }while(b=='y'); } voidshanchu() { charname[20],c; inta,b; do { printf("\n请输入要删除的学生姓名: \n"); fflush(stdin); gets(name); for(a=0;a { if(strcmp(name,st[a].name)==0) break; } for(b=a;b st[b]=st[b+1]; if(a>i) printf("\t没有找到这个学生! ! ! \n"); else { i--; xianshi(); } printf("\n是否继续删除另一个学生信息? (y/n)"); fflush(stdin); c=getchar(); }while(c=='y'); } voidcharu() { shuru(); paixu(); } 执行 voidmain()//主函数 { intchange; do{ system("cls"); printf("=========================**学生信息管理系统**================================\n"); printf("===============欢迎使用============="); printf("\n温馨提示: 为保证您的操作得到保存,请按正常顺序退出系统\n"); printf("\t\t1: 输入学生信息\n"); printf("\t\t2: 显示学生信息\n"); printf("\t\t3: 查找学生信息\n"); printf("\t\t4: 删除学生信息\n"); printf("\t\t5: 插入学生信息\n"); printf("\t\t0: 退出程序\n"); fflush(stdin); printf("\t\t请输入功能选项: "); scanf("%d",&change); switch(change) { case1: shuru();break; case2: xianshi();break; case3: chazhao();break; case4: shanchu();break; case5: charu();break; case0: break; } getch(); }while(change! =6); } 4、设计体会及总结 经过这次实习系统设计,自己总结了这个学生信息管理系统的一些问题,不过收获还是颇为丰富的,再有理论知识上结合实践,使我学到了更多。 首先,更进一步的了解了数据库的基本操作,在这之前,数据库的学习仅仅刚开了个头,我们只是在了解一些概念性的东西。 在做这个系统之前,我连基本的连接数据库,配文件DSN,数据库查询语句等这些东西都不熟练。 现在对于数据库的增删改查操作比较熟练了,对于初学者来说,比较头疼的就是对于单引号的处理。 我的建议是如果不理解先把按照课本上正确的语句敲,然后在多次进行数据库的链接,增删改查操作中不断总结规律。 这次设计的学生信息管理系统,全在自己所掌握的知识下,进行编程设计,完全体现了自己在数据库语言和程序设计课程学习状况,充分地为自己以后更深入了数据库语言奠下深厚的基础。 纵观此学生信息管理系统的整体概况,目前,自我认为设计良好,相关功能都能够实现,功能强大,条理清晰,界面可观性比较好。 并且特色在于,所设计的表单都在一个表单系统桌面中运行,比较符合系统的观念。 在系统设计的过程中,我从中发现,学习数据库要细心和有耐性,并
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C语言程序设计 113 语言程序设计 课程设计 报告