C语言程序设计--学生信息管理系统

电子说

1.2w人已加入

描述

1 系统设计

1.1设计要求

1.1.1设计任务

创建一个学生信息管理系统,让它来运行和管理学生信息,进行对学生学号、姓名、性别、年龄、出生年月日、住址、电话、E—maill等信息的管理。

1.1.2性能指标要求

程序具有对学生信息的入录、查询、修改、删除、保存、添加等功能,对于输入错误的信息能得到提示并能进行选择。

1.2设计思路及设计框图

1.2.2设计思路

采用模块化的程序设计方法,即将较大的任务按照一定的原则分为一个个较小的任务,然后分别设计各个小任务。

本学生信息管理系统采用结构体数组链表来实现,它由如下六大功能模块组成:

添加学生信息函数:对学生的信息进行添加输入。

全部学生信息函数:储存已输入全部学生的信息,进行管理。

修改学生信息函数:对已输入学生的信息进行修改。

删除学生信息函数:对已经不需要了的信息进行删除处理。

查看学生信息函数:可以按不同方式查看学生的信息。

主函数:对其他子函数进行调用处理。


 

1.2.2总体设计框图


 

信息管理系统

2 各个模块的设计

主函数main()

main()函数主要实现了对整个程序的运行控制,以及相关功能模块的调用。菜单放在主函数中方便简洁,用户进入学生信息管理系统时,需要显示主菜单,提示用户进行选择,完成相应任务。

main( ) //主函数

{

int a;

printf("nt 〓〓〓〓〓〓〓〓 ☆ 学生信息管理系统 ☆ 〓〓〓〓〓〓〓〓nn");

printf("nt 〓〓〓〓〓〓〓〓 ☆ 未经允许,不得使用 ☆ 〓〓〓〓〓〓〓〓n");

printf("tn");


 

T: printf("nt 〓〓〓〓〓〓〓〓 ★ ☆ 1.添加学生信息 ☆ ★ 〓〓〓〓〓〓〓〓 n");

printf("nt 〓〓〓〓〓〓〓〓 ★ ☆ 2.全部学生信息 ☆ ★ 〓〓〓〓〓〓〓〓 n");

printf("nt 〓〓〓〓〓〓〓〓 ★ ☆ 3.修改学生信息 ☆ ★ 〓〓〓〓〓〓〓〓 n");

printf("nt 〓〓〓〓〓〓〓〓 ★ ☆ 4.删除学生信息 ☆ ★ 〓〓〓〓〓〓〓〓 n");

printf("nt 〓〓〓〓〓〓〓〓 ★ ☆ 5.查看学生信息 ☆ ★ 〓〓〓〓〓〓〓〓 n");

printf("nt 〓〓〓〓〓〓〓〓 ★ ☆ 6.退出本系统 ☆ ★ 〓〓〓〓〓〓〓〓 n");


 

scanf("%d",&a);

switch(a)

{

case 1:tianjia( );goto T;

case 2:quanbu( );goto T;

case 3:xiugai( );goto T;

case 4:shanchu( );goto T;

case 5:chakan( );goto T;

case 6:break;

default:printf("t你的输入不正确,请再次输入: n");

}

printf("t谢谢您对本系统的支持和使用nn");


 

printf("t2019年9月10日nnnnnnn");

}


 

添加学生信息函数

此函数实现学生信息的添加,将信息存入结构体数组中。

tianjia( ) //添加信息函数

{

int num,num2,i,x;

G:printf("t请输入学号: ");

H:scanf("%d",&num);

V:if(num>100)

{

printf("n这个学号太大了!n请输入1--100的学号:");

scanf("%d",&num);

if(num>100)goto V;

printf("n");

}

num2=looknum(num);

if(num==num2) //判断这个学号是否存在

{

printf("n这个学号已经存在,请重新输入另一个学号。");

goto H;

}

i=num-1;

stu[i].num=num;

printf("t请输入姓名: ");

scanf("%s",stu[i].name);

printf("t请输入性别: ");

scanf("%s",stu[i].sex);

printf("t请输入年龄: ");

scanf("%d",&stu[i].age);

printf("t请输入出生日期: ");

scanf("%s",stu[i].bro);

printf("t请输入住址: ");

scanf("%s",stu[i].add);

printf("t请输入手机号: ");

scanf("%s",stu[i].phone);

printf("t请输入E-maill: ");

scanf("%s",stu[i].em);

printf("nt<*添加信息成功*>nn ");

printf("t1.继续添加n");

printf("t2.退出添加n");

scanf("%d",&x);

switch(x)

{

case 1:goto G;

default:break;

}

}


 

全部学生信息模块

此模块对输入学生的信息进来存储管理。

quanbu() //输出全部信息函数

{

int i;

printf("tt全部学生信息如下nn");

printf("学号t姓名t性别t年龄t出生日期t住址t手机号ttE-mailln");

for(i=0;i<=100;i++)

if(stu[i].num!=0)


 

printf("nt2.取消修改n");

scanf("%d",&x);

if(x==1)

{

stu[num-1].num;

printf("t1.按照学号查询nt2.按照姓名查询n");

scanf("%d",&x); //输入查看方式

if(x==1) //学号查找

{

M:printf("t请输入查看的学号: ");

scanf("%d",&num);

num2=looknum(num);

if(num==num2) //判断这个学号是否存在

{

printf("t这个学号信息如下nn");

printf("学号t 姓名t 性别t 年龄t 出生日期t 住址t 手机号ttE-mailn");

printf("%dt%st%st%dt%st%st%st%sn",stu[num-1].num,

stu[num-1].name,stu[num-1].sex,stu[num-1].age,

stu[num-1].bro,stu[num-1].add,stu[num-1].phone,stu[num-1].em);

goto J;

}

else

{

printf("nt没有这个学号,你可能记错了!n");

J:printf("nt1.继续查看n");

printf("nt2.退出查看n");

scanf("%d",&y);

switch(y)

{

case 1:goto M;

default:break;

}

}

功能测试

3.1 测试仪器与设备

Visualc++6.0

3.2 性能指标测试

3.2.1在主菜单中选择1

当用户输入1并按回车键后,即可进入添加学生信息界面。若是第一次运行该程序,应能实现从键盘输入学生信息到数组中,


 

信息管理系统

当输入一名学生的信息完成时会弹出以下界面,选择1继续添加,选择2退出添

3.2.2在主菜单中选择2

当选择2时,界面会弹出全部学生的信息如下图

信息管理系统

3.2.3在主菜单中选择3

当选着3时,界面会弹出要修改学生的学号进行查询修改的界面如下图

信息管理系统

学号为1的学生信息

信息管理系统

3.2.4在主菜单中选择4

选择4界面会弹出如下图


 

信息管理系统

选择1可以删除该学生的信息,2取消删除学生的信息


 

信息管理系统

编辑切换为居中

添加图片注释,不超过 140 字(可选)

3.2.5在主菜单中选择5

当选择5时会弹出以下界面,1按照学号查询,2按照姓名查询


 

信息管理系统

编辑切换为居中

添加图片注释,不超过 140 字(可选)

当输入的学号错误时会出现以下界面


 

信息管理系统

编辑

添加图片注释,不超过 140 字(可选)

输入学号正确时会弹出以下界面


 

信息管理系统

编辑切换为居中

添加图片注释,不超过 140 字(可选)

3.2.6在主菜单中选择6

当选择6时退出本系统,弹出的界面如下图


 

信息管理系统

信息管理系统

  审核编辑:汤梓红
 
打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分