master
1211226521@qq.com 6 years ago
commit ca7e18715d

@ -0,0 +1 @@
123456 123456

@ -0,0 +1 @@
123456 123456

@ -0,0 +1,10 @@
龙族 江南 魔幻 江南 1
重生之都市修仙 十里剑神 都市 十里剑神 11
深夜书屋 纯洁滴小龙 悬疑灵异 纯洁滴小龙 12
天道图书馆 横扫天涯 玄幻 横扫天涯 13
诡秘之主 爱潜水的乌贼 玄幻 爱潜水的乌贼 14
全球高武 老鹰吃小鸡 都市 老鹰吃小鸡 15
天阿降临 烟雨江南 玄幻 烟雨江南 16
圣武称尊 小圆源 玄幻 小圆源 17
大医凌然 志鸟村 都市 志鸟村 18
民国谍影 寻青藤 军事 寻青藤 19

@ -0,0 +1,2 @@
аЗвЕ ╫╜до д╖╩ц ╫╜до ╣к╪яфФ
аЗвЕ ╫╜до д╖╩ц ╫╜до йФь╘

File diff suppressed because it is too large Load Diff

@ -0,0 +1,2 @@
邓佳奇 18408000926 123456
舒丞 18408000928 123456

Binary file not shown.

@ -0,0 +1,10 @@
龙族 江南 魔幻 江南 1
重生之都市修仙 十里剑神 都市 十里剑神 11
深夜书屋 纯洁滴小龙 悬疑灵异 纯洁滴小龙 12
天道图书馆 横扫天涯 玄幻 横扫天涯 13
诡秘之主 爱潜水的乌贼 玄幻 爱潜水的乌贼 14
全球高武 老鹰吃小鸡 都市 老鹰吃小鸡 15
天阿降临 烟雨江南 玄幻 烟雨江南 16
圣武称尊 小圆源 玄幻 小圆源 17
大医凌然 志鸟村 都市 志鸟村 18
民国谍影 寻青藤 军事 寻青藤 19

@ -0,0 +1,21 @@
#ifndef INFORMATION_H_INCLUDED
#define INFORMATION_H_INCLUDED
struct BOOK {
char name[21];
char author[21];
char type[21];
char publish[21];
char user[21];
int number;
struct BOOK *next;
};
struct STUDENT {
char name[21];
char user_id[21];
char password[21];
struct STUDENT *next;
};
#endif // INFORMATION_H_INCLUDED

@ -0,0 +1,2 @@
аЗвЕ ╫╜до д╖╩ц ╫╜до ╣к╪яфФ
аЗвЕ ╫╜до д╖╩ц ╫╜до йФь╘

@ -0,0 +1,561 @@
#include <cstdio>
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <string.h>
#include <windows.h>
#include "information.h"
struct STUDENT *HEAD;
struct STUDENT *TEMP;
int vip = 0;
char u[21];
char m[21];
void cls();
void Login();
void stu_menu();
void adm_menu();
void window();
void star(int z);
void color(short x);
void change_window();
void user_name(int z);
void tp(short x, short y);
void file() {
FILE *fp;
fp = fopen("user.txt", "r");
if(fp == NULL) {
fclose(fp);
fp = fopen("user.txt", "w");
fprintf(fp, "%s %s %s\n", "舒丞", "18408000928", "123456");
fclose(fp);
}
fp = fopen("admin.txt", "r");
if(fp == NULL) {
fclose(fp);
fp = fopen("admin.txt", "w");
fprintf(fp, "%s %s\n", "admin", "123456");
fclose(fp);
}
fp = fopen("book.txt", "r");
if(fp == NULL) {
fclose(fp);
fp = fopen("book.txt", "w");
fprintf(fp, "%s %s %s %s %d\n", "项目组管理办法", "项目组", "文学", "项目组", 0);
fclose(fp);
}
fp = fopen("lend.txt", "r");
if(fp == NULL) {
fclose(fp);
fp = fopen("lend.txt", "w");
fprintf(fp, "%s %s %s %s %s\n", "项目组管理办法", "项目组", "文学", "项目组", "舒丞");
fclose(fp);
}
}
void player() {
system("mode con cols=161 lines=40");
FILE *fp = fopen("start.txt", "r");
if(fp == NULL) {
fclose(fp);
return;
}
char a[60][182];
while(!feof(fp)) {
tp(0, 0);
Sleep(28);
for(int i = 0; i < 53; i++)
fgets(a[i], 162, fp);
for(int i = 7; i < 40; i++)
printf("%s", a[i]);
}
Sleep(100);
system("mode con cols=155 lines=39");
Sleep(1);
system("mode con cols=149 lines=38");
Sleep(1);
system("mode con cols=143 lines=37");
Sleep(1);
system("mode con cols=137 lines=36");
Sleep(1);
system("mode con cols=131 lines=35");
Sleep(1);
system("mode con cols=125 lines=34");
Sleep(1);
system("mode con cols=119 lines=33");
Sleep(1);
system("mode con cols=113 lines=32");
Sleep(1);
system("mode con cols=107 lines=31");
Sleep(1);
fclose(fp);
}
void read_user() {
struct STUDENT *p;
TEMP = (struct STUDENT *)malloc(sizeof(struct STUDENT));
HEAD = TEMP;
FILE *fp = fopen("user.txt", "r");
if(fp == NULL) {
cls();
color(12);
tp(39, 8);
printf("无法打开文件");
tp(39, 10);
printf("按任意键退出...");
tp(39, 12);
getch();
exit(2);
}
while(!feof(fp)) {
p = TEMP;
fscanf(fp, "%s %s %s\n", TEMP->name, TEMP->user_id, TEMP->password);
TEMP->next = (struct STUDENT *)malloc(sizeof(struct STUDENT));
TEMP = TEMP->next;
}
free(TEMP);
p->next = NULL;
fclose(fp);
}
void login_screen() {
cls();
color(12);
tp(39, 8);
printf("请输入账号密码");
color(11);
tp(39, 10);
printf("账号:");
tp(39, 12);
printf("密码:");
color(8);
tp(39, 14);
printf("按ESC返回菜单");
color(11);
tp(45, 10);
user_name(10);
tp(45, 12);
star(12);
tp(39, 16);
}
void stu_sign() {
int x = 0;
read_user();
login_screen();
TEMP = HEAD;
while(TEMP != NULL) {
if((!strcmp(u, TEMP->name) || !strcmp(u, TEMP->user_id)) && !strcmp(m, TEMP->password)) {
x = 1;
break;
}
TEMP = TEMP->next;
}
if(x == 0) {
color(12);
printf("账号或密码错误");
tp(39, 18);
color(11);
printf("按任意键返回...");
tp(39, 20);
getch();
Login();
}
stu_menu();
}
void Change() {
int x = 0;
char l[21];
read_user();
login_screen();
TEMP = HEAD;
while(TEMP != NULL) {
if((!strcmp(u, TEMP->name) || !strcmp(u, TEMP->user_id)) && !strcmp(m, TEMP->password)) {
x = 1;
break;
}
TEMP = TEMP->next;
}
if(x == 0) {
color(12);
printf("账号或密码错误");
tp(39, 18);
color(11);
printf("按任意键返回...");
tp(39, 20);
getch();
Login();
}
else {
cls();
color(12);
tp(39, 8);
printf("请输入修改后的密码");
color(11);
tp(39, 10);
printf("密码:");
tp(39, 12);
printf("重复:");
tp(45, 10);
star(10);
while(!strcmp(m, TEMP->password)) {
tp(65, 8);
printf("请不要与原密码相同");
tp(45, 10);
printf(" ");
tp(45, 10);
star(10);
}
strcpy(l, m);
tp(45, 12);
star(12);
while(strcmp(l, m)) {
tp(65, 8);
printf("两次密码不一样,请重新输入");
tp(45, 10);
printf(" ");
tp(45, 12);
printf(" ");
tp(45, 10);
star(10);
while(!strcmp(m, TEMP->password)) {
tp(65, 8);
printf("请不要与原密码相同");
tp(45, 10);
printf(" ");
tp(45, 10);
star(10);
}
strcpy(l, m);
tp(45, 12);
star(12);
}
TEMP = HEAD;
FILE *fp = fopen("user.txt", "w");
while(TEMP != NULL) {
fprintf(fp, "%s %s %s\n", TEMP->name, TEMP->user_id, m);
TEMP = TEMP->next;
}
fclose(fp);
cls();
color(12);
tp(39, 8);
printf("修改密码成功");
tp(39, 10);
color(11);
printf("按任意键返回...");
tp(39, 12);
getch();
Login();
}
}
void user_name(int z) {
int n = 0;
char t;
t = getch();
while(1) {
if(t == 13) {
if(n == 0) {
tp(65, 8);
printf(" ");
tp(65, 8);
printf("输入内容不能为空");
tp(45, z);
t = getch();
continue;
}
else
break;
}
if(t == 27)
Login();
if(t == 8 && n == 0) {
t = getch();
continue;
}
else if(t == 8) {
tp(65, 8);
printf(" ");
tp(45, z);
printf(" ");
tp(45, z);
n--;
u[n] = 0;
if(u[n - 1] < 0) {
n--;
u[n] = 0;
}
printf("%s", u);
t = getch();
continue;
}
if(n == 20) {
tp(65, 8);
printf(" ");
tp(65, 8);
printf("超出字数限制");
tp(45, z);
t = getch();
continue;
}
if(t == 32) {
tp(65, 8);
printf(" ");
tp(65, 8);
printf("请不要输入空格");
tp(45, z);
t = getch();
continue;
}
if(t == 0 || t == -32) {
getch();
t = getch();
continue;
}
if(t < 0) {
tp(65, 8);
printf(" ");
tp(45, z);
u[n] = t;
n++;
t = getch();
u[n] = t;
n++;
u[n] = 0;
printf("%s", u);
t = getch();
continue;
}
tp(65, 8);
printf(" ");
tp(45, z);
u[n] = t;
n++;
u[n] = 0;
printf("%s", u);
t = getch();
}
u[n] = 0;
}
void star(int z) {
int n = 0;
char t;
t = getch();
while(1) {
if(t == 13) {
if(n < 6) {
tp(65, 8);
printf(" ");
tp(65, 8);
printf("密码过短");
tp(45, z);
t = getch();
continue;
}
else
break;
}
if(t == 27)
Login();
if(t < 1) {
getch();
t = getch();
continue;
}
if(t == 8 && n == 0) {
t = getch();
continue;
}
else if(t == 8) {
tp(65, 8);
printf(" ");
tp(45, z);
printf(" ");
tp(45, z);
n--;
for(int i = 0; i < n; i++)
putch(42);
t = getch();
continue;
}
if(n == 20) {
tp(65, 8);
printf(" ");
tp(65, 8);
printf("超出字数限制");
tp(45, z);
t = getch();
continue;
}
if(t == 32) {
tp(65, 8);
printf(" ");
tp(65, 8);
printf("请不要输入空格");
tp(45, z);
t = getch();
continue;
}
tp(65, 8);
printf(" ");
tp(45, z);
m[n] = t;
n++;
for(int i = 0; i < n; i++)
putch(42);
t = getch();
}
m[n] = 0;
}
void Register() {
int x = 0;
char s[21], l[21];
read_user();
cls();
color(12);
tp(39, 8);
printf("请输入注册信息");
color(11);
tp(39, 10);
printf("姓名:");
tp(39, 12);
printf("账号:");
tp(39, 14);
printf("密码:");
tp(39, 16);
printf("重复:");
color(8);
tp(39, 18);
printf("按ESC返回菜单");
color(11);
tp(45, 10);
user_name(10);
strcpy(s, u);
tp(45, 12);
user_name(12);
tp(45, 14);
star(14);
strcpy(l, m);
tp(45, 16);
star(16);
while(strcmp(l, m)) {
tp(65, 8);
printf("两次密码不一样,请重新输入");
tp(45, 14);
printf(" ");
tp(45, 16);
printf(" ");
tp(45, 14);
star(14);
strcpy(l, m);
tp(45, 16);
star(16);
}
tp(39, 20);
TEMP = HEAD;
while(TEMP != NULL) {
if(strcmp(s, TEMP->name) == 0 || strcmp(u, TEMP->user_id) == 0) {
x = 1;
break;
}
TEMP = TEMP->next;
}
if(x) {
cls();
color(12);
tp(39, 8);
printf("姓名或账号重复");
color(11);
tp(39, 10);
printf("按任意键返回...");
tp(39, 12);
getch();
Login();
}
else {
FILE *fp = fopen("user.txt", "a+");
fprintf(fp, "%s %s %s\n", s, u, m);
fclose(fp);
cls();
color(12);
tp(39, 8);
printf("注册成功");
color(11);
tp(39, 10);
printf("按任意键返回...");
tp(39, 12);
getch();
Login();
}
}
void adm_sign() {
char a[21], b[21];
FILE *fp = fopen("admin.txt", "r");
if(fp == NULL) {
cls();
color(12);
tp(39, 8);
printf("无法打开文件");
tp(39, 10);
printf("按任意键退出...");
tp(39, 12);
getch();
exit(2);
}
fscanf(fp, "%s %s", a, b);
fclose(fp);
login_screen();
if(!strcmp(u, a) && !strcmp(m, b)) {
vip = 1;
change_window();
adm_menu();
}
else {
color(12);
printf("账号或密码错误");
tp(39, 18);
color(11);
printf("按任意键返回...");
tp(39, 20);
getch();
Login();
}
}
void Login() {
cls();
vip = 0;
window();
color(12);
tp(39, 8);
printf("图书查询管理系统登陆");
color(11);
tp(39, 10);
printf("| 1.学生登陆 |");
tp(39, 12);
printf("| 2.密码修改 |");
tp(39, 14);
printf("| 3.学生注册 |");
tp(39, 16);
printf("| 4.管理员登陆 |");
tp(39, 18);
printf("| 5.退出 |");
tp(39, 20);
switch(getch()) {
case '1':stu_sign();break;
case '2':Change();break;
case '3':Register();break;
case '4':adm_sign();break;
case '5':exit(0);
case '\e':exit(0);
default :Login();
}
}

@ -0,0 +1,17 @@
void file();
void hide();
void title();
void Login();
void player();
void window();
int main()
{
file();
hide();
title();
player();
window();
Login();
return 0;
}

1502
menu.cpp

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

@ -0,0 +1,2 @@
邓佳奇 18408000926 123456
舒丞 18408000928 123456

@ -0,0 +1,60 @@
#include <windows.h>
void hide() {
CONSOLE_CURSOR_INFO cursor_info = {1, 0};
SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE), &cursor_info);
}
void tp(short x, short y) {
COORD pos = {x, y};
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), pos);
}
void color(short x) {
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), x);
}
void title() {
SetConsoleTitle("ͼÊé¹ÜÀíϵͳ");
}
void window() {
system("mode con cols=105 lines=30");
}
void adm_window() {
system("mode con cols=105 lines=37");
}
void change_window() {
system("mode con cols=105 lines=31");
Sleep(1);
system("mode con cols=105 lines=32");
Sleep(1);
system("mode con cols=105 lines=33");
Sleep(1);
system("mode con cols=105 lines=34");
Sleep(1);
system("mode con cols=105 lines=35");
Sleep(1);
system("mode con cols=105 lines=36");
Sleep(1);
}
void recovery_window() {
system("mode con cols=105 lines=36");
Sleep(1);
system("mode con cols=105 lines=35");
Sleep(1);
system("mode con cols=105 lines=34");
Sleep(1);
system("mode con cols=105 lines=33");
Sleep(1);
system("mode con cols=105 lines=32");
Sleep(1);
system("mode con cols=105 lines=31");
Sleep(1);
}
void cls() {
system("cls");
}

@ -0,0 +1,47 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<CodeBlocks_project_file>
<FileVersion major="1" minor="6" />
<Project>
<Option title="图书管理系统" />
<Option pch_mode="2" />
<Option compiler="gcc" />
<Build>
<Target title="Debug">
<Option output="bin/Debug/图书管理系统" prefix_auto="1" extension_auto="1" />
<Option object_output="obj/Debug/" />
<Option type="1" />
<Option compiler="gcc" />
<Compiler>
<Add option="-g" />
</Compiler>
</Target>
<Target title="Release">
<Option output="bin/Release/图书管理系统" prefix_auto="1" extension_auto="1" />
<Option object_output="obj/Release/" />
<Option type="1" />
<Option compiler="gcc" />
<Compiler>
<Add option="-O2" />
</Compiler>
<Linker>
<Add option="-s" />
</Linker>
</Target>
</Build>
<Compiler>
<Add option="-Wall" />
<Add option="-fexceptions" />
</Compiler>
<Unit filename="information.h" />
<Unit filename="login.cpp" />
<Unit filename="main.cpp" />
<Unit filename="menu.cpp" />
<Unit filename="windows.cpp" />
<Extensions>
<code_completion />
<envvars />
<debugger />
<lib_finder disable_auto="1" />
</Extensions>
</Project>
</CodeBlocks_project_file>

@ -0,0 +1,56 @@
# depslib dependency file v1.0
1543808621 source:c:\users\faceseace\desktop\图书管理系统\图书信息.cpp
1543808916 source:c:\users\faceseace\desktop\图书管理系统\cursor.cpp
<windows.h>
1546862293 source:c:\users\faceseace\desktop\图书管理系统\main.cpp
1543971123 c:\users\faceseace\desktop\图书管理系统\information.h
1546868050 source:c:\users\faceseace\desktop\图书管理系统\windows.cpp
<windows.h>
1546867706 source:c:\users\faceseace\desktop\图书管理系统\menu.cpp
<cstdio>
<stdio.h>
<conio.h>
<stdlib.h>
<string.h>
<windows.h>
"information.h"
1546868110 source:c:\users\faceseace\desktop\图书管理系统\login.cpp
<cstdio>
<stdio.h>
<conio.h>
<stdlib.h>
<string.h>
<windows.h>
"information.h"
1546862293 source:c:\users\administrator\desktop\新建文件夹\main.cpp
1546867706 source:c:\users\administrator\desktop\新建文件夹\menu.cpp
<cstdio>
<stdio.h>
<conio.h>
<stdlib.h>
<string.h>
<windows.h>
"information.h"
1546909335 c:\users\administrator\desktop\新建文件夹\information.h
1546868050 source:c:\users\administrator\desktop\新建文件夹\windows.cpp
<windows.h>
1546909335 source:c:\users\administrator\desktop\新建文件夹\login.cpp
<cstdio>
<stdio.h>
<conio.h>
<stdlib.h>
<string.h>
<windows.h>
"information.h"

@ -0,0 +1,34 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<CodeBlocks_layout_file>
<FileVersion major="1" minor="0" />
<ActiveTarget name="Debug" />
<File name="information.h" open="1" top="1" tabpos="5" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="184" topLine="0" />
</Cursor>
</File>
<File name="main.cpp" open="1" top="0" tabpos="2" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="209" topLine="0" />
</Cursor>
</File>
<File name="menu.cpp" open="1" top="0" tabpos="3" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="7360" topLine="172" />
</Cursor>
</File>
<File name="login.cpp" open="1" top="0" tabpos="1" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="6877" topLine="242" />
</Cursor>
</File>
<File name="windows.cpp" open="1" top="0" tabpos="4" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="452" topLine="21" />
</Cursor>
<Folding>
<Collapse line="2" />
<Collapse line="7" />
</Folding>
</File>
</CodeBlocks_layout_file>
Loading…
Cancel
Save