c语言大作业,关于人事档案管理方面的
#include
#include
#include
#include
/*函数声明*/
void readFile();
void display();
void insert();
void del();
void modify();
void search_stuNo();
void search_name();
void search_sex();
void search_age();
void search_c();
void search_sql();
void search_vb();
void search();
void sort_name();
void sore_age();
void sort_c();
void sort_sql();
void sort_vb();
void sort_total();
void sort_avg();
void sort();
void close();
int userlimit();
/*定义全局学生结构类型*/
struct student
{
char name[20];
char sex[10];
int stuNo;
int age;
float c;
float sql;
float vb;
float total;
float avg;
};
/*定义全局结构数组变量stu*/
student stu[50];
/*定义全局变量stuNumber,代表学生总人数,也就是学生记录总条数,*/
int stuNumber=0;
/*定义全局用户登录结构体类型*/
struct uu
{
char name[20];
char pass[30];
};
/*定义全局结构数组变量use*/
struct uu use[50];
/*定义全局变量count,代表用户总人数,也就是注册用户总人数, */
int count=0;
//
void main()
{
int choice;
int user;
user=userlimit();
if (user==0)
{
printf("非法用户,请联系管理员");
getch();
exit(0);
}
readFile();
do
{
system("cls"); //清屏
printf("\n\t\t\t欢迎使用学生管理系统!\n");
printf("\n\n\t\t\t 文件菜单\n");
printf("\t\t--------------------------------------\n");
printf("\t\t\t 1.录入学员记录\n");
printf("\t\t\t 2.显示学员记录\n");
printf("\t\t\t 3.修改学员记录\n");
printf("\t\t\t 4.排序功能(降序)\n");
printf("\t\t\t 5.查找学员记录\n");
printf("\t\t\t 6.删除学员记录\n");
printf("\t\t\t 7.退出系统\n");
printf("\n请选择:");
scanf("%d",&choice);
switch(choice)
{
case 1:
insert();
break;
case 2:
display();
break;
case 3:
modify();
break;
case 4:
sort();
break;
case 5:
search();
break;
case 6:
del();
case 7:
close();
default:
printf("错误的菜单选项!\n");
}
}while(1);
}
//
/*读取文件函数readFile的定义*/
void readFile()
{
//int i;
stuNumber=0;
FILE *fp;
/*打开文件*/
fp=fopen("student.txt","r");
if (fp == NULL)
{
//printf("\n 打开文件失败!还没有学生记录");
stuNumber=0;
return ; //函数立即返回,本例不能用exit(1)退出整个程序;
}
/*读取文件到数组中,并统计学生记录的条数*/
//feof函数判断文件指针是否在文件末尾
while(!feof(fp))
{
if(fread(&stu[stuNumber],sizeof(struct student),1,fp)==1 )
stuNumber++;
}
/*关闭文件*/
fclose(fp);
}
/*显示学员全部记录函数display的定义*/
void display()
{
int i;
/*打印显示*/
p