⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 xiugaichenggongban.c

📁 程序设计
💻 C
📖 第 1 页 / 共 2 页
字号:
/*-------------------头文件与变量定义---------------------*/
#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 + -