- 1、本文档共31页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
专业专注
专业专注
#i nclude<stdio.h> #in clude<stdlib.h>
#i nclude<stri ng.h>
//定义学生结构体
struct Stude nt
{
int dorNo; // 宿舍号
char stuName[20];
//学生姓名
int stuNo;
//学生学号
char stuSex[10];
//性别
char dept[20];
//系别
char major[20];
//专业
int tel; // 电话
} *stu;
//函数指针
void(*p)(struct Student *,int);
//录入学生信息
void in sert(struct Stude nt *,i nt );
//按学号查找
void no Seek(struct Stude nt *,i nt );
//函数功能:打印信息
void output(struct Stude nt *,i nt );
/*函数功能:将数据写入文件*/
void write(struct Stude nt *,i nt);
/*函数功能:读取文件数据*/
void read(struct Stude nt *,i nt );
//按宿舍查找
void dSeek(struct Stude nt *,i nt);
//按姓名查找
void n aSeek(struct Stude nt *,i nt );
//按系别查找
void deSeek(struct Stude nt *,i nt);
//删除学生信息
void del(struct Stude nt *,i nt );
//修改学生信息
void modify(struct Stude nt *,i nt );
//增加学生信息
void add(struct Stude nt *,i nt);
//全局变量来记录存储学生的人数
int num=0;
//主函数
int main()
char ch[10];
printf(" \t 欢迎进入宿舍管理系统 \n");
printf("请输入你想存储的学生人数:");
sca nf("%d",&nu m);
system("cls");
//申请动态存储空间
stu=(struct Student *)malloc((sizeof(struct Student))*num);
while(1){
\t 欢迎进入宿舍管理系统
\t 欢迎进入宿舍管理系统
\n");
\t
printf("
\t1.录入学生信息 "
printf("
\t2.按学号查询
\n");
printf("
\t3.按宿舍号查询
");
printf("
\t4.按姓名查询
\n");
printf("
\t5.按系别或专业查询 ");
printf("
\t6.添加信息
\n");
printf("
\t7 ?修改信息
");
prin tf("
\t8.保存信息 \n");
*********************************************************
**\n");
printf("
\t9.读取信息 "
printf("
\t10.删除信息 \n");
prin tf("
\t0.退出系统 \n");
printf("
**\n");
printf(" \n");
printf(" \t请选择你想实现的功能:");
sea nf("%s",&ch);
//用函数指针指向各函数
if(strcmp(ch,"1")==0)
{
p=in sert;
(*p)(stu, nu m);
}
else if (strcmp(ch,"2")==0)
{
p=no Seek;
(*p)(stu, nu m);
else if(strcmp(ch,"3")==0)
{
p=dSeek;
(*p)(stu, nu m);
}
else if(strcmp(ch,"4")==0)
{
p=n aSeek;
(*p)(stu, nu m);
}
else if(strcmp(ch,"5")==0)
{
p=deSeek;
(*p)(stu, nu m);
}
else if(strcmp(ch,"6")==0)
{
p=add;
(*p)(stu, nu m);
}
else if(strcmp(ch,"7")==0)
p=modify;
(*p)(stu, nu m);
}
else if(strcmp(ch,"8")==0)
{
p=write;
(*p)(stu, nu m);
}
else if(strcmp(ch,"9")==0)
{
p=read;
(*p)(stu, nu m);
文档评论(0)