高级语言程序综合课程设计实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
高级语言程序设计
课题名称:学生信息管理系统
实验报告
1设计目的
为了方便学校对学生的管理,处理好每个学生的个人信息,加强学校对学生的管理
2总体设计
组成框架:
流程图:
a)查询模块
b)添加模块
c)修改模块
d)录入模块
e)打印模块
f)排序模块
g)删除模块
3详细设计
(1)头文件,结构体定义及主函数
#include
#include
#include
#define M 100 //数组元素的个数
struct stu //定义结构体类型{
char num[15]; //学号
char name[18]; //姓名
int old; //年龄
char sex[10]; //性别
char birthday[10]; //出生日期
char addr[20]; //居住地址
char tele[15]; //联系电话
char email[20]; //邮箱地址
char nation[10]; //民族
};
int input(struct stu s[]);//输入学生信息
void print(struct stu s[],int n);//显示所有信息
void searchbynum(struct stu s[],int n);//按学号查询学生信息
void searchbyname(struct stu s[],int n);//按姓名查询学生信息
void search(struct stu s[],int n);//学生信息查询方式显示界面
int insert(struct stu s[],int n);//插入新学生信息
void save(struct stu s[],int n);//将输入的学生信息进行保存
int load(struct stu s[]);//从文件中读取学生信息
void modify(struct stu s[],int n);//按学号修改学生信息
int del(struct stu s[],int n );//按学号删除学生信息
void sort(struct stu s[],int n);//学生信息排序方式显示界面
void sortbynum(struct stu s[],int n);//按学号对学生信息进行排序
void sortbyold(struct stu s[],int n);//按年龄对学生信息进行排序
int menu();//菜单函数
void main()
{
struct stu student[M];//定义结构体数组
int length;//保存学生个数
for(;;)//无限循环
switch(menu())//调用主菜单函数,返回值为整数,作为语句的条件{
case 1: length=input(student);break;//输入
case 2: print(student,length);break;//显示信息
case 3: search(student,length);break;//查找
case 4: length=insert(student,length);break;//插入
case 5: modify(student,length);break;//修改
case 6: length=del(student,length);break;//删除
case 7: sort(student,length);break;//排序
case 8: save(student,length);break;//保存
case 9: length=load(student);break;//读文件
case 10: printf("退出登录!");return;//如果菜单返回值为10,则结束程序
default : printf("输入有误,请输入1-10的数字!\n");
}
}
int menu()
{
int choice;
printf(" \n 学生信息管理系统\n");
printf("***********************************************\n");
printf(" 1 输入信息\n");
printf(" 2 显示信息\n");
printf(" 3 查找信息(按学号/姓名)\n");
printf(" 4 插入新信息\n");
printf(" 5 修改学生信息\n");
printf(" 6 删除学生信息\n");
printf(" 7 排序(按学号/年龄)\n");
printf(" 8 保存到文件\n");
printf(" 9 打开信息文件\n");
printf(" 10 退出\n");
printf("***********************************************\n");
do{
printf("\n请输入您要选择的操作:");
scanf("%d",&choice);
}while(choice>10||choice<1);//选择项不在1-10之间重新选择
return choice;//返回选择项,主程序根据返回值调用相应的函数}
(2)输入函数
int input(struct stu s[])
{
int i,n;
printf("\n输入信息的学生个数:");