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

上传人:b****3 文档编号:26572613 上传时间:2023-06-20 格式:DOCX 页数:14 大小:18.29KB
下载 相关 举报
学生信息管理系统C语言课程设计报告.docx_第1页
第1页 / 共14页
学生信息管理系统C语言课程设计报告.docx_第2页
第2页 / 共14页
学生信息管理系统C语言课程设计报告.docx_第3页
第3页 / 共14页
学生信息管理系统C语言课程设计报告.docx_第4页
第4页 / 共14页
学生信息管理系统C语言课程设计报告.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

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

《学生信息管理系统C语言课程设计报告.docx》由会员分享,可在线阅读,更多相关《学生信息管理系统C语言课程设计报告.docx(14页珍藏版)》请在冰豆网上搜索。

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

学生信息管理系统C语言课程设计报告

 

通信工程C语言强化训练实验报告

 

学号:

姓名:

提交日期:

2011年7月8日

成绩:

评语:

 

教师签字:

东北大学秦皇岛分校

 

学生信息管理系统

强化训练目的

C语言基本知识的巩固和综合运用。

基本数据类型、基本控制结构、数组、指针、函数、结构体和共用体。

C语言高级编程。

链表基本操作、文件的基本操作、图形和声音制作。

程序的结构化设计。

编辑、设置、编译、调试、执行。

C语言结合实际问题的综合设计。

设计题目功能

通过计算机对数据文件的存储和读取,对学生信息进行管理,能够完成学生信息的增、删、改、查找等功能。

设计题目要求

名片信息至少包括学号、姓名、性别、出生日期、宿舍号等基本信息。

具体要求包括:

1有主界面和主菜单

2以班级为单位用链表存放学生信息

3可以实现按学号、姓名、宿舍号查询和统计并在屏幕上输出查询结果

4友好的界面和操作提示

[A]信息录入

[D]信息删除

[F]信息查询

[Q]退出

4、程序流程图

总体设计

详细设计

【程序】主函数

voidmain()/*主函数即用户的操作界面*/

{

system("color1E");/*设计文本颜色*/

intb,flag=0;/*声明局部变量*/

while

(1)/*循环输出以下信息*/

{

printf("\n\t\t\t欢迎来到学生成绩管理系统!

\n");

printf("\n\t\t\t\t###制作\n");

printf("\t\t\t-------------------------------\n");

printf("\t\t\t1.键入学生的信息\n\n");/*键入学生的信息*/

printf("\t\t\t2.查看录入的学生信息\n\n");/*查看录入的学生信息*/

printf("\t\t\t3.按姓名查看学生的信息\n\n");/*按姓名查看学生的信息*/

printf("\t\t\t4.按学号查看学生的信息\n\n");/*按学号查看学生的信息*/

printf("\t\t\t5.按宿舍号查看学生的信息\n\n");/*按宿舍号查看学生的信息*/

printf("\t\t\t6.删除学生信息\n\n");/*删除学生信息*/

printf("\t\t\t7.保存学生信息\n\n");/*保存*/

printf("\t\t\t8.打开文件\n\n");/*打开文件*/

printf("\t\t\t9.我的个人信息\n\n");/*我的个人信息*/

printf("\t\t\t0.退出\n\n");/*退出*/

printf("\t\t\t请输入你的选择:

");

scanf("%d",&b);

switch(b)

{

case1:

type();break;/*调用键入学生信息函数*/

case2:

look();break;/*调用查看函数*/

case3:

search_name();break;/*调用姓名查看函数*/

case4:

search_number();break;/*调用学号查看函数*/

case5:

search_dorm();break;/*调用宿舍号查看函数*/

case6:

del();break;/*调用删除函数*/

case7:

save();break;/*调用保存函数*/

case8:

see();break;/*调用打开文件函数*/

case9:

welcome();break;/*调用我的个人信息函数*/

case0:

flag=1;break;/*退出SWITCH语句*/

default:

printf("错误!

");

}

if(flag)break;/*如果选择0就退出循环*/

}

}

5、程序设计源代码

#include"stdio.h"

#include"conio.h"

#include"string.h"

#include"stdlib.h"

voidlook();/*声明查看函数*/

voidsave();/*声明保存函数*/

voidsearch_name();/*声明按姓名查看函数*/

voidsearch_number();/*声明按学号查看函数*/

voidsearch_dorm();/*声明按宿舍号查看函数*/

voiddel();/*声明删除函数*/

intopenl();/*声明打开函数*/

voidwelcome();/*声明我的个人信息函数*/

voidtype();/*声明输入函数*/

voidsee();/*声明打开并查看文件函数*/

structstudent/*定义学生信息的结构体类型*/

{

charnum[15];/*学号*/

charname[20];/*姓名*/

charsex[4];/*性别*/

chardorm[15];/*宿舍号*/

charbirthday[20];/*出生日期*/

}stu[100];

intn;/*声明一个全局变量*/

voidmain()/*主函数即用户的操作界面*/

{

system("color1E");/*设计文本颜色*/

intb,flag=0;/*声明局部变量*/

while

(1)/*循环输出以下信息*/

{

printf("\n\t\t\t欢迎来到学生成绩管理系统!

\n");

printf("\n\t\t\t\t赖伟玮制作\n");

printf("\t\t\t-------------------------------\n");

printf("\t\t\t1.键入学生的信息\n\n");/*键入学生的信息*/

printf("\t\t\t2.查看录入的学生信息\n\n");/*查看录入的学生信息*/

printf("\t\t\t3.按姓名查看学生的信息\n\n");/*按姓名查看学生的信息*/

printf("\t\t\t4.按学号查看学生的信息\n\n");/*按学号查看学生的信息*/

printf("\t\t\t5.按宿舍号查看学生的信息\n\n");/*按宿舍号产看学生的信息*/

printf("\t\t\t6.删除学生信息\n\n");/*删除学生信息*/

printf("\t\t\t7.保存学生信息\n\n");/*保存*/

printf("\t\t\t8.打开文件\n\n");/*打开文件*/

printf("\t\t\t9.我的个人信息\n\n");/*我的个人信息*/

printf("\t\t\t0.退出\n\n");/*退出*/

printf("\t\t\t请输入你的选择:

");

scanf("%d",&b);

switch(b)

{

case1:

type();break;/*调用键入学生信息函数*/

case2:

look();break;/*调用查看函数*/

case3:

search_name();break;/*调用姓名查看函数*/

case4:

search_number();break;/*调用学号查看函数*/

case5:

search_dorm();break;/*调用宿舍号函数*/

case6:

del();break;/*调用删除函数*/

case7:

save();break;/*调用保存函数*/

case8:

see();break;/*调用打开文件函数*/

case9:

welcome();break;/*调用我的个人信息函数*/

case0:

flag=1;break;/*退出SWITCH语句*/

default:

printf("错误!

");

}

if(flag)break;/*如果选择0就退出循环*/

}

}

voidwelcome()/*我的个人信息函数*/

{

system("CLS");

printf("\n\n\t\t------------个人信息------------");/*在屏幕上输出一下信息*/

printf("\n\n\n\n\t\t姓名:

赖伟玮");

printf("\t\t\tSex:

男\n");

printf("\t\t年龄:

21\n");

printf("\n\t\t\t--------学习经历--------\n\n\n");

printf("\t\t小学:

高梧小学\n\n");

printf("\t\t初中:

武平三中\n\n");

printf("\t\tS高中:

武平一中\n\n");

printf("\t\t大学:

东北大学秦皇岛分校\n\n");

printf("\n\n\t\t按任意键返回欢迎屏幕!

");

getch();/*按任意键返回主函数*/

}

voidtype()/*定义键入学生信息函数*/

{

system("CLS");

inti;/*定义局部变量*/

printf("\t\t输出你想输入的学生信息个数:

");

scanf("%d",&n);

for(i=0;i

{

printf("\n\t\t\t----------------\n");

printf("\t\t\t学号:

");

scanf("%s",&stu[i].num);/*输入学号*/

printf("\t\t\t姓名:

");

scanf("%s",&stu[i].name);/*输入姓名*/

printf("\t\t\t性别:

");

scanf("%S",&stu[i].sex);/*输入性别*/

printf("\t\t\t宿舍号:

");

scanf("%s",&stu[i].dorm);/*输入宿舍号*/

printf("\t\t\t出生日期:

");

scanf("%s",&stu[i].birthday);/*输入出生日期*/

}

printf("\n\n\t\t\t按任意键返回菜单!

!

");

getch();

save();

}

voidsave()/*建立保存文件函数*/

{

system("CLS");

FILE*fp;/*定义文件型指针*/

inti;

if((fp=fopen("student.txt","wb"))==NULL)/*打开输出文件*/

{

printf("不能打开文件!

\n");

return;/*终止程序*/

}

for(i=0;i

if(fwrite(&stu[i],sizeof(structstudent),1,fp)!

=1)

printf("文件写入错误\n");

fclose(fp);/*关闭文件*/

printf("\n\n\n\n\t\t\t学生信息保存成功!

\n");

printf("\n\n\n\n\t\t\t按任意键返回菜单!

!

");

getch();

}

voidlook()/*定义查看函数*/

{

system("CLS");

inti;

//n=openl();/*调用openl函数*/

printf("\t学号\t姓名\t性别\t宿舍号\t出生日期\t\n");

for(i=0;i

{

printf("%10s\t%s\t%2s\t%10s\t%10s\t\n",stu[i].num,stu[i].name,stu[i].sex,stu[i].dorm,stu[i].birthday);

}

printf("\n\n\n\t\t\t按任意键返回菜单");

getch();

}

voidsearch_name()/*按姓名查看函数*/

{

system("CLS");

inti;

charname[20];/*声明字符数组*/

printf("\t\t\t请输入学生姓名:

\n");

scanf("%s",name);

printf("\t学号\t姓名\t性别\t宿舍号\t出生日期\t\n");

for(i=0;i

if(strcmp(stu[i].name,name)==0)/*将输入的姓名与结构体中的姓名进行比较*/

{

printf("%10s\t%s\t%2s\t%10s\t%10s\t\n",stu[i].num,stu[i].name,stu[i].sex,stu[i].dorm,stu[i].birthday);

printf("\n\n\n\t\t\t按任意键返回菜单");

}

getch();

}

voidsearch_number()/*定义按学号查看函数*/

{

system("CLS");

inti;

charnumber[15];/*声明字符数组*/

printf("\t\t\t请输入学号:

\n");

scanf("%s",number);

printf("\t学号\t姓名\t性别\t宿舍号\t出生日期\n");

for(i=0;i

if(strcmp(stu[i].num,number)==0)/*将输入的学号与结构体中的学号进行比较*/

printf("%10s\t%s\t%2s\t%10s\t%10s\t\n",stu[i].num,stu[i].name,stu[i].sex,stu[i].dorm,stu[i].birthday);

printf("\n\n\n\t\t\t按任意键返回菜单");

getch();

}

voidsearch_dorm()/*按宿舍号查看函数*/

{

system("CLS");

inti;

chardorm[15];/*声明字符数组*/

printf("\t\t\t请输入学生宿舍号:

\n");

scanf("%s",dorm);

printf("\t学号\t姓名\t性别\t宿舍号\t出生日期\t\n");

for(i=0;i

if(strcmp(stu[i].dorm,dorm)==0)/*将输入的宿舍号与结构体中的宿舍号进行比较*/

{

printf("%10s\t%s\t%2s\t%10s\t%10s\t\n",stu[i].num,stu[i].name,stu[i].sex,stu[i].dorm,stu[i].birthday);

printf("\n\n\n\t\t\t按任意键返回菜单");

}

getch();

}

voiddel()/*定义删除学生信息函数*/

{

inti;

chara;

charname[20];

system("CLS");

printf("\t\t\t输入学生名字:

\n");

scanf("%s",name);

system("CLS");

printf("\t学号\t姓名\t性别\t宿舍号\t出生日期\t\n");

for(i=0;i

if(strcmp(stu[i].name,name)==0)

{

printf("%10s\t%s\t%2s\t%10s\t%10s\t\n",stu[i].num,stu[i].name,stu[i].sex,stu[i].dorm,stu[i].birthday);

getch();

printf("真的删除?

(yorn)");

getchar();

scanf("%c",&a);

if(a=='y')/*是否删除该信息*/

{

for(;i

stu[i]=stu[i+1];

n=n-1;

printf("你已经删除信息");

}

else

printf("退出");

getch();

}

save();

}

intopenl()/*定义打开文件函数*/

{

system("CLS");

inti;

FILE*fp;

if((fp=fopen("student.txt","rb"))==NULL)

{

printf("Cannotopenfile.\n");

exit(0);

}

for(i=0;!

feof(fp);i++)

fread(&stu[i],sizeof(structstudent),1,fp);

fclose(fp);

return(i-1);

}

voidsee()/*打开并查看文件*/

{

system("CLS");

inti;

n=openl();

printf("文件打开成功!

\n");

printf("按任意键查看!

\n");

getch();

printf("\t学号\t姓名\t性别\t宿舍号\t出生日期\t\n");

for(i=0;i

{

printf("%10s\t%s\t%2s\t%10s\t%10s\t\n",stu[i].num,stu[i].name,stu[i].sex,stu[i].dorm,stu[i].birthday);

}

printf("\n\n\n\t\t\t按任意键返回菜单");

getch();

}

6、强化训练心得体会

通过为期一周的课程设计,我们对《C语言》这门课程有了更深一步的了解。

它是计算机程序设计的重要理论技术基础,在我们通信工程专业的学习中占据着十分重要的地位。

同时也使我们知道,要学好这门课程,仅学习书本上的知识是不够的,还要有较强的实践能力。

因为我们学习知识就是为了实践。

而只有多实践,多编写程序,才能更好的理解与掌握书本上的东西。

运用《C语言》中的算法思想作数据结构,结合C语言基本知识,编写一个学生信息管理系统。

通过完成本课题,进一步熟悉C语言的基本知识,并掌握数据结构的一些基本算法思想,掌握C语言的基本数据类型、基本控制结构、数组、指针、函数、结构体和共用体,进一步熟悉指针的用法,数组的建立运用和函数的调用等。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工作范文 > 演讲主持

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

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