📄 xiugaichenggongban.c
字号:
/*-------------------头文件与变量定义---------------------*/
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define SIZE sizeof(struct user)
void xiadd();
void ddcheck();
void ddcancle();
void ddbianli() ;
void dingdan();
void denglu();
void zhuce() ;
void mima();
struct information
{
char ddhao;
char checi;
char xibie;
char qidian;
char zhongdian;
char piaojian;
char ID;
char student;
char child;
};
struct user /*用户信息结构体*/
{ char name[10];
char key[16];
char ddhao;
char checi;
char xitie;
char qidian;
char zhongdian;
char piaojian;
char ID;
char student;
char child;
char piaoshu;
};
char *name1,*name_1;
char *mima1,*mima_1;
char *name2;
/*--------------------------MAIN函数----------------------------*/
void main() /*main*/
{ char choose;
do{ clrscr();
printf(" ");
printf("***********************************\n\n");
printf(" ");
printf("Welcome to use the train system!\n\n");
printf(" ");
printf("***********************************\n\n");
printf("Please choose:(1~3)\n");
printf("\t1:register\n\t2:login\n\t3:exit\n");
choose=getchar();
switch(choose)
{case '1':zhuce();break;
case '2':denglu();break;
case '3':exit(0);}
}while(1);
}
/*-------------------------注册函数---------------------------------*/
void zhuce()
{struct user infor[20],*up,yonghu;
int n=0,i=0;
char c,yes,check[16];
FILE *fp;
yonghu.ddhao=0;
yonghu.checi=0;
yonghu.xitie=0;
yonghu.qidian=0;
yonghu.zhongdian=0;
yonghu.piaojian=0;
yonghu.ID=0;
yonghu.student=0;
yonghu.child=0;
yonghu.piaoshu=0;
if((fp=fopen("c:\\user","a+"))==NULL)
{ printf("File is not exist!!\ndo you want to create??y/n");
yes=getchar();
switch(yes)
{case 'y':fp=fopen("c:\\user","w");
case 'n':break;
default: return;}
}
rewind(fp);
up=infor;
while(!feof(fp))
{fscanf(fp,"%10s%16s%c%c%c%c%c%c%c%c%c%c",yonghu.name,yonghu.key,
yonghu.ddhao,
yonghu.checi,
yonghu.xitie,
yonghu.qidian,
yonghu.zhongdian,
yonghu.piaojian,
yonghu.ID,
yonghu.student,
yonghu.child,
yonghu.piaoshu);}
loop: do {printf("input your name:");
scanf("%10s",yonghu.name);
for(up=infor,i=0;up<infor+n;up++,i++)
{if(strcmp(yonghu.name,up->name)==0)
{printf("user has exist!!!\n");
getchar();
goto loop;}
else continue;}
}while(i!=n);
/*-----------------------密码输入与验证------------------------------*/
printf("input your key(<15):");
for(i=0;(c=getch())!='\r';i++)
{
if(c==8)
{
{ printf("\b");
yonghu.key[i--]=0;
yonghu.key[i--]=0;
}
putchar(0);
printf("\b");
continue;
}
else {yonghu.key[i]=c;
putchar('*');
}
yonghu.key[i+1]='\0';
}
do{ printf("\ninput again:");
for(i=0;(c=getch())!='\r';i++)
{if(c==8)
{
{ printf("\b");
check[i--]=0;
check[i--]=0;}
putchar(0);
printf("\b");
continue;
}
else {check[i]=c;putchar('*');}
check[i+1]='\0';
}
if(strcmp(check,yonghu.key)!=0)
{printf("\ninput error!!!!press Enter to continue....");
if((getch())==27)return;
}
else break;
}while(1);
fprintf(fp,"%10s%16s%c%c%c%c%c%c%c%c%c%c",yonghu.name,yonghu.key,
yonghu.ddhao,
yonghu.checi,
yonghu.xitie,
yonghu.qidian,
yonghu.zhongdian,
yonghu.piaojian,
yonghu.ID,
yonghu.student,
yonghu.child ,yonghu.piaoshu);
fclose(fp);
printf("\nzhe ce success!!!\n\nPress any key to return.....\n");
getch();
}
/*-------------------------登录函数--------------------------*/
void denglu()
{ struct user *up,infor[20];
char key[16],c,f,chkname[10];
int i=0,n=0,t=1; int m;
char yes;
FILE *fp;
clrscr();
printf("\t\t\tWELCOME TO LOGIN\n\n\n");
do{ printf("\nplease input your name:");
scanf("%10s",chkname);
fp=fopen("c:\\user","r");
up=infor;
name2=chkname;
while(!feof(fp))
{fscanf(fp,"%10s%16s%c%c%c%c%c%c%c%c%c%c",up->name,up->key,up->ddhao,
up->checi,
up->xitie,
up->qidian,
up->zhongdian,
up->piaojian,
up->ID,
up->student,
up->child,up->piaoshu);
up++;
n++;
}
for(up=infor,i=0;up<infor+n;up++,i++)
{
if(strcmp(chkname,up->name)==0)
{t=0;
break;
}
else continue;
}
break;
}while(i!=n);
if(t==1)
{ printf("you are not the administrator!!you had no access to login!!!\n");
printf("press Enter to continue....");
getchar();
return;
}
else
info: { printf("\nplease input you key:");
for(i=0;(c=getch())!='\r';i++)
{ if(c==8)
{
{printf("\b");
key[i--]=0;
key[i--]=0;
}
putchar(0);
printf("\b");
continue;
}
else {key[i]=c; mima1=key;
putchar('*');
}
key[i+1]='\0';
}
if(strcmp(key,up->key)==0)
{dingdan(up);fclose(fp);
}
else
{printf("key error!!!!\npress Enter to continue...");
if((getch())==27)
goto info;
}
}
}
/*---------------选择订单服务------------------*/
void dingdan(struct user *up)
{ int choose_1;
struct user *up1;
int t;
up1=up;
do{ clrscr();
printf("\nlogin success!!!\n\n");
printf("Please choose:\n");
printf(" 0.mi ma xiu gai!\n 1.xia dingdan\n 2.dingdan check\n 3.dingdan cancle\n 4.dingdan bianli\n 5.exit\n");
choose_1=getch();
switch(choose_1)
{case '0' :mima();break;
case '1': xiadd(up1);break;
case '2': ddcheck(up1);break;
case '3': xiadd(up1);break;
case '4': xiadd(up1);break;
case '5':exit(0);break;
}
}while(1);
}
/*-----------------密码修改-----------*/
void mima()
{ int k,m,i,t;int n=0; char jiumima[16],xinmima[16],xinmima_1[16];
int ddhao;
char yes,c;
struct user *up,user,*up2,infor[20];
FILE *fp;
if((fp=fopen("c:\\user","r+"))==NULL)
{printf("file open error!!") ;}
rewind(fp);
while(!feof(fp))
{fscanf(fp,"%10s%16%c%c%c%c%c%c%c%c%c%c",up->name,up->key,up->ddhao,
up->checi,
up->xitie,
up->qidian,
up->zhongdian,
up->piaojian,
up->ID,
up->student,
up->child,up->piaoshu);
up++;
n++;
}
for(up=infor,i=0;up<infor+n;up++,i++)
{if(strcmp(name2,up->name)==0)
{t=0;
break;
}
else
continue;}
if(t==0)
{
into: printf("input jiu mi ma:\n");
scanf("%16s",&jiumima);
if(strcmp(jiumima,mima1)==0)
m=0;
else
m=1;
if(m==0)
{printf("input new mima:\n");
scanf("%16s",&xinmima);
printf("input again:\n");
scanf("%16s",&xinmima_1);
if(strcmp(xinmima,xinmima_1==0))
k=0;
else
{printf("mima error!!!"); getchar();
goto into;
}
}
else
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -