# "stdlib.h" 포함
# "conio.h" 포함
# "string.h" 포함
# "io.h" 포함
# ESC 27 정의
# 입력 정의 13
# Y 89 정의
# y/kloc 정의-0/21
# 정의 N 78
# 정의 번호 1 10
Void vmenu1();
Charchoose ();
Voidpassword ();
Char * getps ();
Voidmimam ();
Voidbuild ();
Voidsave ();
Voidbuy ();
Voidopen1();
Voidmodify ();
Voidmodify m ();
Void xnumm ();
Void xclassm ();
Voidxnamem ();
Voidadd ();
Void xuehaoa ();
Void xing minga ();
Voidquery ();
Void xuehaoq ();
Void xingmingQ ().
Void delete1();
Void xuehaod ();
Void xing mingd ();
Voidsort ();
Voidsortx ();
Voidsortn ();
Voidsorta ();
Voidall ();
Voidhelp ();
Voidlock ();
Voidexit1();
구조 기록
{
Char cn 번호 [15];
Charcclass [15];
Charcname [15];
Char c money [10];
Char cs pend [10];
구조 레코드 * next
}
구조 sot
{
Charccnumber [15];
Struct sot * pnext
}
구조 주소
{
샤일 * 광고;
구조물 주소 * anext
}
Struct sot * chead = NULL
Struct record *head=NULL, *ppointer=NULL, * temp
구조 기록 * modf
구조물 주소 * ahead = NULL
FILE * FP
Int Fflag = 0;;
Intcounts = 0;
Intloop = 0;
Void main ()
{
Char 메뉴;
Password ();
While(loop==0)
{
시스템 ("cls");
Vmenu1();
Menu = choose ();
스위치 (메뉴)
{
사례 "1":빌드 (); 깨뜨리다
사례 "2": count++;
If(count== 1)
{
부 ();
깨뜨리다
}
기타
{
Chead = NULL
부 ();
깨뜨리다
}
사례' 3': open1(); 깨뜨리다
사례 "4": modify (); K = 0;; 깨뜨리다
사례 "6": 쿼리 (); 깨뜨리다
사례 "7": delete1(); 깨뜨리다
Case "9": all (); 깨뜨리다
사례 "b": 도움말 (); 깨뜨리다
Case "c": lock (); 깨뜨리다
사례' d': {loop =1; 종료1(); 깨뜨리다 }
기본값:
Printf ("-메뉴에 일련 번호 ") 를 입력하십시오
Printf ("-아무 키나 눌러 선택을 다시 시작합니다.-\ n ");
Fflush (stdin);
A = getch ();
}
}
}
비밀번호 무효화 ()
{
문자 암호 [15];
Char * password1;
Char * password2
Char p1[15];
Charp2 [15];
Char a;;
Int I;;
Intcount = 0;
If(access("c:\\mima.txt ",00)! =0)
{
While( 1)
{
시스템 ("cls");
For(I = 0;; 나<5; I++)
Printf ("\ n");
Printf(" \ t \ t 학생 식사 시스템에 오신 것을 환영합니다! \ n \ n ");
Printf ("\ n");
Printf ("\ n-관리자 암호를 만드십시오:-.
Password1= getps ();
For(I = 0;; 나< 15; I++)
P1[I] = * (password1+);
Printf ("\ n");
Printf ("\ n-비밀번호를 다시 입력하십시오:-.
Password2 = getps ();
For(I = 0;; 나< 15; I++)
P2 [I] = * (password2++);
만약 (! Strcmp(p 1, p2))
{
If((fp=fopen("c:\\mima.txt ","w"))==NULL)
{
Printf ("오류! \ n ");
종료 (0);
}
기타
{
Fprintf(fp, "%s", p1);
Printf(" \ n 비밀번호가 생성되었습니다! \ n ");
Fclose (FP);
System ("cmd.exe/c attrib c: \ \ mima.txt+h");
깨뜨리다
}
}
기타
{
Printf ("두 입력이 일치하지 않습니다. 비밀번호를 다시 입력하십시오. \ n");
}
}
}
기타
{
While( 1)
{
Count++;+;
For(I = 0;; 나<5; I++)
Printf ("\ n");
Printf ("-관리자 비밀번호를 입력하십시오:-.
Password1= getps ();
For(I = 0;; 나< 15; I++)
P1[I] = * (password1+);
If((fp=fopen("c:\\mima.txt ","r ")= = NULL)
{
Printf ("오류! \ n ");
종료 (0);
}
기타
{
Fscanf(fp,' %s', 암호);
Fclose (FP);
만약 (! Strcmp(p 1, 암호))
깨뜨리다
기타
Printf(" \ n 잘못된 암호! \ n ");
}
If(count & lt;; =9)
{
Printf(" \ n 아직 %d 번의 기회가 있습니다. 。 。 。 。 。 \n ",10-count);
Printf ("\ n \ n \ n-ESC 이외의 키를 눌러 암호를 다시 입력하십시오! -\ n ");
A = getch ();
If(a==ESC)
종료 (0);
}
If(count== 10)
{
Printf(" \ n \ n 이 시스템을 사용할 권한이 없습니다! \ n ");
Printf ("종료하려면 아무 키나 누르십시오. 。 。 。 。 。 \ n ");
Fflush (stdin);
A = getch ();
종료 (0);
}
}
}
Printf(" \ n \ n \ n 암호를 변경하시겠습니까? \ n ");
Printf(" \ t y 또는 y 를 눌러 변경하고 나머지 키는 시스템에 들어갑니다. \ n ");
Fflush (stdin);
A = getchar ();
If(a==Y||a==y)
{
Mimam ();
}
시스템 ("cls");
For(I = 0;; 나<5; I++)
Printf ("\ n");
Printf(" \ t \ t 학생 식사 시스템에 오신 것을 환영합니다! \ n \ n ");
Printf ("");
Printf(" \ t \ t 아무 키나 눌러 시스템에 들어갑니다. 。 。 。 。 。 \ n \ n ");
A = getch ();
}
Char *getps ()
{
Char p [15];
암호 = p;;
While( 1)
{
Fflush (stdin);
* password = getch ();
If(*password==ENTER)
{
깨뜨리다
}
Putchar ('*');
Password++;+;
}
* password =' \ 0
암호 = p;;
반환 (암호);
}