master
18570281412 7 years ago
parent 6228cfe639
commit f06635e343

@ -0,0 +1,223 @@
#include "admin.h"
#include <string.h>
void admin_BOOK_menu(int choice)
{
system("cls");
showtitle();
Settitle("|学生选课系统|管理员功能菜单|");
in_BOOK();
char o[8][30] = {"浏 览 现 有 课 程 信 息","选 课 与 退 课","修 改 课 程 信 息","删 除 课 程","新 增 课 程","全部用户信息","修改用户密码","修改当前密码"};
int i,j = 0;
for(i = 0; i < 8;i++)
{
if(choice == i)
setcolor(0,15);
setposition(LB+21,START+i);
printf("%s",o[j++]);
setcolor(11,0);
}
if(choice == 8)
setcolor(0,15);
setposition(LB+50,START+i-1);
printf("退出登陆");
setcolor(11,0);
strcpy(book1,ADMIN.book1);
strcpy(book2,ADMIN.book2);
strcpy(book3,ADMIN.book3);
booknum = ADMIN.booknum;
if(strcmp(book1,"o") == 0) book1[0] = 0;
if(strcmp(book2,"o") == 0) book2[0] = 0;
if(strcmp(book3,"o") == 0) book3[0] = 0;
setposition(LB,INFO+1);
printf("已选课程:%s %s %s",book1,book2,book3);
setposition(LB,INFO+2);
printf("(%d/3)",ADMIN.booknum);
}
void admin_BOOK_choice()
{
system("cls");
showtitle();
int choice = 0;
while(1)
{
admin_BOOK_menu(choice);
setposition(19,12);
printf("输入“↑”、“↓”“←”“→”,回车键确认");
HideCursor();
char a,b;
b = getch();
if(b==-32)
a = getch();
fflush(stdin);
if(a == UP && b == -32)
{
choice--;
}
else if(a == DOWN && b == -32)
{
choice++;
}
else if(a == LEFT && b == -32 && choice == 8)
{
choice--;
}
else if(a == LEFT && b == -32 && choice != 8)
{
choice = 8;
}
else if(a == RIGHT && b == -32 && choice == 8)
{
choice = 7;
}
else if(a == RIGHT && b == -32 && choice != 8)
{
choice = 8;
}
else if(b==13)
{
in();
if(choice == 0) conshow_BOOK_choice(1);
if(choice == 1) borrowandreturn_BOOK_choice(1);
if(choice == 2) alter_BOOK();
if(choice == 3) del_BOOK();
if(choice == 4) newone_BOOK();
if(choice == 5) showall();
if(choice == 6) change_user_all();
if(choice == 7) change_admin_password();
if(choice == 8) login1();
break;
}
else{
setposition(19,12);
printf("输入“↑”或“↓”,回车键确认");
}
if(choice<0) choice = 8;
if(choice>8) choice = 0;
}
}
void admin_BOOK_info()
{
Settitle("|学生选课系统|管理员功能菜单|");
system("cls");
showtitle();
setposition(LB+5,START+1);
printf("管 理 员 功 能 提 示 ");
setposition(LB+5,START+2);
printf("输入所有信息长度超过20字符将自动省略超过部分");
setposition(LB+5,START+3);
printf("录入任何信息若包含空格将自动省略第一个空格及其后面部分");
setposition(LB+5,START+4);
printf("一次只能新增一门课,若要修改数量请使用修改功能");
setposition(LB+5,START+5);
printf("最多选三门课");
}
void admin_save()
{
if((FP_ADMIN = fopen(ADMIN.id,"w"))==NULL)
{
system("cls");
printf("\n\n\t未知错误");
system("pause");
exit(0);
}
fprintf(FP_ADMIN,"%s %s %s %s %d ",ADMIN.pass,ADMIN.book1,ADMIN.book2,ADMIN.book3,ADMIN.booknum);
if(fclose(FP_ADMIN))
{
system("cls");
printf("\n\t*————*");
printf("\n\t*未知错误*");
printf("\n\t*————*");
system("pause");
exit(0);
}
}
void change_admin_password()
{
admin_menu_info();
Settitle("|学生选课系统|管理员功能|修改管理员密码|");
setposition(LB,INFO);
printf("原密码:");
char pass[20];
fflush(stdin);
scanf("%s",pass);
fflush(stdin);
setposition(LB,INFO+1);
if(strcmp(pass,ADMIN.pass) == 0)
{
printf("输入新密码:");
scanf("%s",pass);
char apass[20];
setposition(LB,INFO+2);
printf("确认新密码:");
scanf("%s",apass);
setposition(LB,INFO+3);
if(strcmp(apass,pass) == 0)
{
strcpy(ADMIN.pass,pass);
printf("修改成功!");
}
else
{
printf("两次输入的密码不一致!");
}
}
else{
printf("原密码错误!");
}
admin_save();
admin_BOOK_choice();
}
void change_user_all()
{
admin_menu_info();
Settitle("|学生选课系统|管理员功能|修改用户密码|");
ID();
setposition(LB,INFO+3);
printf("输入新密码:");
char pass[20];
scanf("%s",pass);
if(strlen(pass) < 6)
{
setposition(LB,INFO+2+2);
printf("密码长度过短!");
setposition(LB,INFO+3+2);
system("pause");
admin_BOOK_choice();
}
char apass[20];
setposition(LB,INFO+2+2);
printf("确认新密码:");
scanf("%s",apass);
setposition(LB,INFO+3+2);
if(strcmp(apass,pass) == 0)
{
strcpy(change->pass,pass);
printf("修改成功!");
}
else
{
printf("两次输入的密码不一致!");
}
save();
admin_BOOK_choice();
}
void admin_menu_info()
{
Settitle("|学生选课系统|管理员功能菜单|修改功能|");
system("cls");
showtitle();
setposition(LB+5,START+1);
printf("管 理 员 修 改 功 能 提 示 ");
setposition(LB+5,START+2);
printf("输入所有信息长度超过20字符将自动省略超过部分");
setposition(LB+5,START+3);
printf("录入任何信息若包含空格将自动省略第一个空格及其后面部分");
setposition(LB+5,START+4);
printf("管理员密码不能为空用户密码不能少于6位");
}

@ -0,0 +1,29 @@
#ifndef ADMIN_H_INCLUDED
#define ADMIN_H_INCLUDED
#include "BOOKUI.h"
#include "user.h"
#include "BOOKS.h"
#include "login.h"
FILE *FP_ADMIN;
struct admins{
char id[20],pass[20];
char book1[20],book2[20],book3[20];
int booknum;
};
typedef struct admins ADMINS;
ADMINS ADMIN;
void admin_BOOK_menu(int choice);
void admin_BOOK_choice();
void admin_BOOK_info();
void admin_save();
void change_admin_password();
void change_user_all();
void admin_menu_info();
#endif // ADMIN_H_INCLUDED
Loading…
Cancel
Save