|
|
|
|
#include <stdio.h>
|
|
|
|
|
#include <stdlib.h>
|
|
|
|
|
#include <string.h>
|
|
|
|
|
#include <conio.h>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
struct worker
|
|
|
|
|
{
|
|
|
|
|
char ID[20];//<2F><><EFBFBD><EFBFBD>
|
|
|
|
|
char name[20];//<2F><><EFBFBD><EFBFBD>
|
|
|
|
|
char sex[5];//<2F>Ա<EFBFBD>
|
|
|
|
|
char born[20];//<2F><><EFBFBD><EFBFBD>
|
|
|
|
|
char edu[20];//ѧ<><D1A7>
|
|
|
|
|
char position[20];//ְ<><D6B0>
|
|
|
|
|
char wage[10];//<2F><><EFBFBD><EFBFBD>
|
|
|
|
|
char address[100];//סַ
|
|
|
|
|
char tel[15];//<2F>绰
|
|
|
|
|
}work[1000];
|
|
|
|
|
int n ;
|
|
|
|
|
int temp;
|
|
|
|
|
|
|
|
|
|
//<2F>ļ<EFBFBD><C4BC><EFBFBD>дģ<D0B4><C4A3>
|
|
|
|
|
void read()//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
{
|
|
|
|
|
FILE *fp;
|
|
|
|
|
int i = 0;
|
|
|
|
|
if( (fp = fopen("d:\\date.txt","r")) == NULL )
|
|
|
|
|
{
|
|
|
|
|
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>D<EFBFBD≯<EFBFBD>Ŀ¼<EFBFBD><EFBFBD><EFBFBD>½<EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD>Ϊdate\n\n\n");
|
|
|
|
|
system("pause");
|
|
|
|
|
system("cls");
|
|
|
|
|
return ;
|
|
|
|
|
}
|
|
|
|
|
fscanf(fp,"%d\n",&n);
|
|
|
|
|
while(i < n)
|
|
|
|
|
{
|
|
|
|
|
fscanf(fp,"%s\n%s\n%s\n%s\n%s\n%s\n%s\n%s\n%s\n",work[i].ID,work[i].name,work[i].sex,work[i].born,work[i].edu,work[i].position,work[i].wage,work[i].address,work[i].tel);
|
|
|
|
|
i ++;
|
|
|
|
|
}
|
|
|
|
|
fclose(fp);
|
|
|
|
|
}
|
|
|
|
|
void write()//д<><D0B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
{
|
|
|
|
|
FILE *fp;
|
|
|
|
|
int i = 0;
|
|
|
|
|
if( (fp = fopen("d:\\date.txt","w")) == NULL )
|
|
|
|
|
{
|
|
|
|
|
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD>\n");
|
|
|
|
|
return ;
|
|
|
|
|
}
|
|
|
|
|
fprintf(fp,"%d\n",n);
|
|
|
|
|
while(i < n)
|
|
|
|
|
{
|
|
|
|
|
fprintf(fp,"%s\n%s\n%s\n%s\n%s\n%s\n%s\n%s\n%s\n",work[i].ID,work[i].name,work[i].sex,work[i].born,work[i].edu,work[i].position,work[i].wage,work[i].address,work[i].tel);
|
|
|
|
|
i ++;
|
|
|
|
|
}
|
|
|
|
|
fclose(fp);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>
|
|
|
|
|
void input()// <20>Ӽ<EFBFBD><D3BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
{
|
|
|
|
|
int i;
|
|
|
|
|
int flag;//<2F><><EFBFBD>ǹ<EFBFBD><C7B9><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7>Ѵ<EFBFBD><D1B4><EFBFBD>
|
|
|
|
|
int sz;//<2F><><EFBFBD><EFBFBD>char<61><72><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
|
|
|
|
char sex;//<2F><><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD>
|
|
|
|
|
char c;//ָ<><D6B8>Y?N
|
|
|
|
|
read();//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD>Ƚ<EFBFBD><C8BD>ļ<EFBFBD><C4BC><EFBFBD>ԭ<EFBFBD>е<EFBFBD><D0B5><EFBFBD><EFBFBD>ݶ<EFBFBD><DDB6><EFBFBD>(<28><>ȡ<EFBFBD><C8A1><EFBFBD>ڴ<EFBFBD>)
|
|
|
|
|
|
|
|
|
|
do
|
|
|
|
|
{
|
|
|
|
|
flag = 0;
|
|
|
|
|
printf("\t\t<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ְ<EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD><EFBFBD><EFBFBD>:(0001-1000) \n\t\t");
|
|
|
|
|
scanf("%s",work[n].ID);
|
|
|
|
|
for(i = 0 ; i < n ; i ++) //<2F><><EFBFBD><EFBFBD><EFBFBD>й<EFBFBD><D0B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƚ<EFBFBD>
|
|
|
|
|
{
|
|
|
|
|
temp=atoi(work[n].ID);
|
|
|
|
|
if(!(temp>0000&&temp<=1000&&strlen(work[n].ID)<=4))
|
|
|
|
|
{
|
|
|
|
|
printf("\t\t<EFBFBD><EFBFBD><EFBFBD>Ų<EFBFBD><EFBFBD>ڹ涨<EFBFBD><EFBFBD>Χ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>롣\n\n\t\t");
|
|
|
|
|
getch();system("cls");
|
|
|
|
|
input();
|
|
|
|
|
}
|
|
|
|
|
if(strcmp(work[i].ID,work[n].ID) == 0)
|
|
|
|
|
{
|
|
|
|
|
flag = 1; //ID<49>Ѵ<EFBFBD><D1B4>ڣ<EFBFBD><DAA3><EFBFBD>flagΪ1
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
if(flag) //<2F><>ʾ<EFBFBD>ȽϽ<C8BD><CFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŵ<EFBFBD><C5B4><EFBFBD>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
{
|
|
|
|
|
printf("\t\t<EFBFBD>ù<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѵ<EFBFBD><EFBFBD>ڣ<EFBFBD>\n\n");
|
|
|
|
|
printf("\t\t<EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?(Y/N): ");
|
|
|
|
|
scanf("%*c%c",&c);
|
|
|
|
|
if(c == 'N' || c == 'n') break;
|
|
|
|
|
system("cls");
|
|
|
|
|
continue;
|
|
|
|
|
}
|
|
|
|
|
printf("\n\t\t<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ְ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ: \n\n");
|
|
|
|
|
printf("\t\t<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:\t\t");
|
|
|
|
|
scanf("%s",work[n].name);
|
|
|
|
|
printf("\t\t<EFBFBD>Ա<EFBFBD>:\t\t");
|
|
|
|
|
scanf("%s",work[n].sex);
|
|
|
|
|
printf("\t\t<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:\t");
|
|
|
|
|
scanf("%s",work[n].born);
|
|
|
|
|
printf("\t\tѧ<EFBFBD><EFBFBD>:\t\t");
|
|
|
|
|
scanf("%s",work[n].edu);
|
|
|
|
|
printf("\t\tְ<EFBFBD><EFBFBD>:\t\t");
|
|
|
|
|
scanf("%s",work[n].position);
|
|
|
|
|
do //<2F><><EFBFBD>빤<EFBFBD>ʣ<EFBFBD><CAA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7>з<EFBFBD><D0B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
|
|
|
|
{
|
|
|
|
|
int j;
|
|
|
|
|
char pay[10];
|
|
|
|
|
sz=1;
|
|
|
|
|
printf("\t\t<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:\t\t");
|
|
|
|
|
scanf("%s",pay);
|
|
|
|
|
for(j=0;j<strlen(pay);j++)
|
|
|
|
|
{
|
|
|
|
|
if(pay[j]>='0'&&pay[j]<='9');
|
|
|
|
|
else sz=0;
|
|
|
|
|
}
|
|
|
|
|
if(sz==0) printf("\t\t<EFBFBD>벻Ҫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD>\n\n");
|
|
|
|
|
else strcpy(work[n].wage,pay);
|
|
|
|
|
}while(sz==0);
|
|
|
|
|
|
|
|
|
|
printf("\t\tסַ:\t\t");
|
|
|
|
|
scanf("%s",work[n].address);
|
|
|
|
|
|
|
|
|
|
do //<2F><><EFBFBD><EFBFBD><EFBFBD>绰<EFBFBD><E7BBB0><EFBFBD>룬<EFBFBD><EBA3AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7>з<EFBFBD><D0B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
|
|
|
|
{
|
|
|
|
|
int j;
|
|
|
|
|
char num[15];
|
|
|
|
|
sz=1;
|
|
|
|
|
printf("\t\t<EFBFBD>绰:\t\t");
|
|
|
|
|
scanf("%s",num);
|
|
|
|
|
for(j=0;j<strlen(num);j++)
|
|
|
|
|
{
|
|
|
|
|
if(num[j]>='0'&&num[j]<='9');
|
|
|
|
|
else sz=0;
|
|
|
|
|
}
|
|
|
|
|
if(sz==0) printf("\t\t<EFBFBD>벻Ҫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD>\n\n");
|
|
|
|
|
else strcpy(work[n].tel,num);
|
|
|
|
|
}while(sz==0);
|
|
|
|
|
|
|
|
|
|
printf("\n\t\t<EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?(Y/N): ");
|
|
|
|
|
scanf("%*c%c",&c);
|
|
|
|
|
n ++;
|
|
|
|
|
}
|
|
|
|
|
while( c != 'N' && c != 'n');
|
|
|
|
|
write(); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD>ڴ<EFBFBD>)<29><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д<EFBFBD><D0B4><EFBFBD>ļ<EFBFBD>
|
|
|
|
|
printf("\n\n\t\t<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѱ<EFBFBD><EFBFBD>棡\n\n");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//<2F><>ʾģ<CABE><C4A3>
|
|
|
|
|
void output_inf(int id)
|
|
|
|
|
{
|
|
|
|
|
printf("\t\t|* *|\n");
|
|
|
|
|
printf("\t\t| <20><><EFBFBD><EFBFBD>:\t%s\n",work[id].ID);
|
|
|
|
|
printf("\t\t| <20><><EFBFBD><EFBFBD>:\t%s\n",work[id].name);
|
|
|
|
|
printf("\t\t| <20>Ա<EFBFBD>:\t%s\n",work[id].sex);
|
|
|
|
|
printf("\t\t| <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:\t%s\n",work[id].born);
|
|
|
|
|
printf("\t\t| ѧ<><D1A7>:\t%s\n",work[id].edu);
|
|
|
|
|
printf("\t\t| ְ<><D6B0>:\t%s\n",work[id].position);
|
|
|
|
|
printf("\t\t| <20><><EFBFBD><EFBFBD>:\t%s\n",work[id].wage);
|
|
|
|
|
printf("\t\t| סַ:\t%s\n",work[id].address);
|
|
|
|
|
printf("\t\t| <20>绰:\t%s\n",work[id].tel);
|
|
|
|
|
printf("\t\t|* *|\n");
|
|
|
|
|
printf("\t\t|---------------------------------------------|\n");
|
|
|
|
|
//printf("\n\n\n");
|
|
|
|
|
}
|
|
|
|
|
void show()//<2F><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>ְ<EFBFBD><D6B0><EFBFBD><EFBFBD>Ϣ
|
|
|
|
|
{
|
|
|
|
|
int i;
|
|
|
|
|
read();
|
|
|
|
|
if(n == 0) printf("<EFBFBD><EFBFBD>¼!\n\n");
|
|
|
|
|
else
|
|
|
|
|
for(i = 0 ; i < n ; i ++)
|
|
|
|
|
{
|
|
|
|
|
if(i==0) printf("\n\t\t|=============================================|\n");
|
|
|
|
|
output_inf(i);//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾģ<CABE><C4A3>
|
|
|
|
|
if(i==(n-1)) printf("\t\t|=============================================|\n");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//<2F><>ѯģ<D1AF><C4A3>
|
|
|
|
|
void que()//<2F><>ѯ<EFBFBD><D1AF>Ϣ
|
|
|
|
|
{
|
|
|
|
|
char num;
|
|
|
|
|
int flag,i;
|
|
|
|
|
char q_id[20] ;//<2F><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD>
|
|
|
|
|
char q_name[20] ;//<2F><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD>
|
|
|
|
|
char q_edu[20] ; //<2F><>ѯѧ<D1AF><D1A7>
|
|
|
|
|
char q_position[20] ;//<2F><>ѯְλ
|
|
|
|
|
char c;//ָ<><D6B8>Y?N
|
|
|
|
|
read();//<2F><EFBFBD><F2BFAAB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA>ѯ<EFBFBD><D1AF>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD>Ҫ<EFBFBD>ȶ<EFBFBD><C8B6><EFBFBD>
|
|
|
|
|
while(1)
|
|
|
|
|
{
|
|
|
|
|
system("cls");
|
|
|
|
|
printf("\n\n");
|
|
|
|
|
printf("\t\t|====================================================|\n");
|
|
|
|
|
printf("\t\t| <20><>ѯ |\n");
|
|
|
|
|
printf("\t\t|====================================================|\n");
|
|
|
|
|
printf("\t\t|* *|\n");
|
|
|
|
|
printf("\t\t| 1.<2E><><EFBFBD><EFBFBD><EFBFBD>Ų<EFBFBD>ѯ |\n");
|
|
|
|
|
printf("\t\t| |\n");
|
|
|
|
|
printf("\t\t| 2.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯ |\n");
|
|
|
|
|
printf("\t\t| |\n");
|
|
|
|
|
printf("\t\t| 3.<2E><>ѧ<EFBFBD><D1A7><EFBFBD><EFBFBD>ѯ |\n");
|
|
|
|
|
printf("\t\t| |\n");
|
|
|
|
|
printf("\t\t| 4.<2E><>ְ<EFBFBD><D6B0><EFBFBD><EFBFBD>ѯ |\n");
|
|
|
|
|
printf("\t\t| |\n");
|
|
|
|
|
printf("\t\t| <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˳<EFBFBD><CBB3><EFBFBD>ģ<EFBFBD><C4A3> |\n");
|
|
|
|
|
printf("\t\t|* *|\n");
|
|
|
|
|
printf("\t\t|====================================================|\n");
|
|
|
|
|
printf("\t\t<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD>(1-4):");
|
|
|
|
|
scanf("%*c%c",&num);
|
|
|
|
|
if(num <'1' || num >'4')
|
|
|
|
|
{
|
|
|
|
|
printf("\t\t<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD>\n\n");
|
|
|
|
|
//printf( "<22><><EFBFBD><EFBFBD><EFBFBD>˻<EFBFBD><CBBB><EFBFBD><EFBFBD>˵<EFBFBD><CBB5><EFBFBD>\n");
|
|
|
|
|
system("pause");
|
|
|
|
|
printf( "\n\t\t<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˻<EFBFBD><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD><EFBFBD><EFBFBD>\n\n");
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
system("cls");
|
|
|
|
|
flag = 0;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ְ<EFBFBD><D6B0><EFBFBD><EFBFBD>Ϣ<EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
if(num == '1')//<2F><><EFBFBD><EFBFBD><EFBFBD>Ų<EFBFBD>ѯ
|
|
|
|
|
{
|
|
|
|
|
printf("\t\t<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD>ѯְ<EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD><EFBFBD>ţ<EFBFBD>");
|
|
|
|
|
scanf("%s",q_id);
|
|
|
|
|
for(i = 0 ; i < n ;i ++)
|
|
|
|
|
{
|
|
|
|
|
if( strcmp(work[i].ID,q_id) == 0)
|
|
|
|
|
{
|
|
|
|
|
output_inf(i);
|
|
|
|
|
flag = 1;//<2F><><EFBFBD><EFBFBD>
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else if(num == '2')//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯ
|
|
|
|
|
{
|
|
|
|
|
printf("\t\t<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD>ѯְ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
scanf("%s",q_name);
|
|
|
|
|
for(i = 0 ; i < n ;i ++)
|
|
|
|
|
{
|
|
|
|
|
if( strcmp(work[i].name,q_name) == 0)
|
|
|
|
|
{
|
|
|
|
|
output_inf(i);
|
|
|
|
|
flag = 1;//<2F><><EFBFBD><EFBFBD>
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else if(num == '3')//<2F><>ѧ<EFBFBD><D1A7><EFBFBD><EFBFBD>ѯ
|
|
|
|
|
{
|
|
|
|
|
printf("\t\t<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD>ѯְ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѧ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
|
|
|
|
|
scanf("%s",q_edu);
|
|
|
|
|
for(i = 0 ; i < n ;i ++)
|
|
|
|
|
{
|
|
|
|
|
if( strcmp(work[i].edu,q_edu) == 0)
|
|
|
|
|
{
|
|
|
|
|
output_inf(i);
|
|
|
|
|
flag = 1;//<2F><><EFBFBD><EFBFBD>
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else if(num == '4')//<2F><>ְ<EFBFBD><D6B0><EFBFBD><EFBFBD>ѯ
|
|
|
|
|
{
|
|
|
|
|
printf("\t\t<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD>ѯְ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ְ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
|
|
|
|
scanf("%s",q_position);
|
|
|
|
|
for(i = 0 ; i < n ;i ++)
|
|
|
|
|
{
|
|
|
|
|
if( strcmp(work[i].position,q_position) == 0)
|
|
|
|
|
{
|
|
|
|
|
output_inf(i);
|
|
|
|
|
flag = 1;//<2F><><EFBFBD><EFBFBD>
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
if(!flag)//<2F>ж<EFBFBD><D0B6>Ƿ<EFBFBD><C7B7>и<EFBFBD>ְ<EFBFBD><D6B0><EFBFBD><EFBFBD>Ϣ
|
|
|
|
|
{
|
|
|
|
|
printf("\n\n\t\t<EFBFBD><EFBFBD>ְ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ!\n\n");
|
|
|
|
|
}
|
|
|
|
|
printf("\n\n\t\t<EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯ(Y/N):");
|
|
|
|
|
|
|
|
|
|
scanf("%*c%c",&c);
|
|
|
|
|
if(c == 'N' || c == 'n') break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//<2F><EFBFBD><DEB8><EFBFBD>Ϣģ<CFA2><C4A3>
|
|
|
|
|
void mod()//<2F><EFBFBD>ְ<EFBFBD><D6B0><EFBFBD><EFBFBD>Ϣ
|
|
|
|
|
{
|
|
|
|
|
char change_ID[20];//<2F><><EFBFBD>ĵ<DEB8>ְ<EFBFBD><D6B0><EFBFBD>Ĺ<EFBFBD><C4B9><EFBFBD>
|
|
|
|
|
int number;//ְ<><D6B0><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD>λ<EFBFBD><CEBB>
|
|
|
|
|
char num;//ָ<><D6B8>
|
|
|
|
|
char message[100];//<2F>ĵ<DEB8><C4B5><EFBFBD>Ϣ
|
|
|
|
|
char c;//ָ<><D6B8>Y?N
|
|
|
|
|
int flag;
|
|
|
|
|
int i;
|
|
|
|
|
int sz;
|
|
|
|
|
read();
|
|
|
|
|
while(1)
|
|
|
|
|
{
|
|
|
|
|
flag = 0;
|
|
|
|
|
system("cls");
|
|
|
|
|
printf("\n\n\t\t<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĵ<EFBFBD>ְ<EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD><EFBFBD>ţ<EFBFBD>");
|
|
|
|
|
scanf("%s",change_ID);
|
|
|
|
|
for(i = 0 ; i < n ; i ++)
|
|
|
|
|
{
|
|
|
|
|
if( strcmp(work[i].ID,change_ID) == 0 )
|
|
|
|
|
{
|
|
|
|
|
number = i;
|
|
|
|
|
flag = 1;
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
if(!flag)
|
|
|
|
|
{
|
|
|
|
|
printf("\n\n\t\t<EFBFBD><EFBFBD>Ա<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n\n");
|
|
|
|
|
printf("\n\n\t\t<EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(Y/N):");
|
|
|
|
|
scanf("%*c%c",&c);
|
|
|
|
|
if(c == 'N' || c == 'n') break;
|
|
|
|
|
continue;
|
|
|
|
|
}
|
|
|
|
|
sz=1;
|
|
|
|
|
printf("\n\n");
|
|
|
|
|
printf("\t\t|====================================================|\n");
|
|
|
|
|
printf("\t\t| <20><EFBFBD> |\n");
|
|
|
|
|
printf("\t\t|====================================================|\n");
|
|
|
|
|
printf("\t\t|* *|\n");
|
|
|
|
|
printf("\t\t| 1.<2E><EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD> |\n");
|
|
|
|
|
printf("\t\t| |\n");
|
|
|
|
|
printf("\t\t| 2.<2E><EFBFBD>ѧ<EFBFBD><D1A7> |\n");
|
|
|
|
|
printf("\t\t| |\n");
|
|
|
|
|
printf("\t\t| 3.<2E><EFBFBD>ְ<EFBFBD><D6B0> |\n");
|
|
|
|
|
printf("\t\t| |\n");
|
|
|
|
|
printf("\t\t| 4.<2E>Ĺ<DEB8><C4B9><EFBFBD> |\n");
|
|
|
|
|
printf("\t\t| |\n");
|
|
|
|
|
printf("\t\t| 5.<2E><EFBFBD>סַ |\n");
|
|
|
|
|
printf("\t\t| |\n");
|
|
|
|
|
printf("\t\t| 6.<2E>ĵ绰 |\n");
|
|
|
|
|
printf("\t\t| |\n");
|
|
|
|
|
printf("\t\t| <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˳<EFBFBD><CBB3><EFBFBD>ģ<EFBFBD><C4A3> |\n");
|
|
|
|
|
printf("\t\t|* *|\n");
|
|
|
|
|
printf("\t\t|====================================================|\n");
|
|
|
|
|
printf("\n\t\t<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD>(1-6):");
|
|
|
|
|
scanf("%*c%c",&num);
|
|
|
|
|
if(num < '1' || num > '6')
|
|
|
|
|
{
|
|
|
|
|
printf("\t\t<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD>\n\n");
|
|
|
|
|
system("pause");
|
|
|
|
|
continue;
|
|
|
|
|
}
|
|
|
|
|
system("cls");
|
|
|
|
|
printf("\n\n\t\t<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD>");
|
|
|
|
|
scanf("%s",message);
|
|
|
|
|
printf("\n\n\t\t<EFBFBD><EFBFBD>ȷ<EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(Y/N)<29><>");
|
|
|
|
|
scanf("%*c%c",&c);
|
|
|
|
|
if(c == 'N' || c == 'n') {sz=0;break;}
|
|
|
|
|
switch(num)
|
|
|
|
|
{
|
|
|
|
|
case '1' : strcpy(work[number].name,message); break;
|
|
|
|
|
case '2' : strcpy(work[number].edu,message); break;
|
|
|
|
|
case '3' : strcpy(work[number].position,message); break;
|
|
|
|
|
case '4' : strcpy(work[number].wage,message); break;
|
|
|
|
|
case '5' : strcpy(work[number].address,message); break;
|
|
|
|
|
case '6' : strcpy(work[number].tel,message); break;
|
|
|
|
|
}
|
|
|
|
|
system("cls");
|
|
|
|
|
printf("\n\n\t\t<EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(Y/N):");
|
|
|
|
|
scanf("%*c%c",&c);
|
|
|
|
|
if(c == 'N' || c == 'n') {if(sz==1) write();break;}
|
|
|
|
|
else {if(sz==1) write();if(sz==0) read();}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//ɾ<><C9BE><EFBFBD><EFBFBD>Ϣģ<CFA2><C4A3>
|
|
|
|
|
void del()//ɾ<><C9BE>ְ<EFBFBD><D6B0><EFBFBD><EFBFBD>Ϣ
|
|
|
|
|
{
|
|
|
|
|
char delete_ID[20];//ɾ<><C9BE>ְ<EFBFBD><D6B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
int i,j;
|
|
|
|
|
int flag;//<2F><><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7>и<EFBFBD>ְ<EFBFBD><D6B0><EFBFBD><EFBFBD>Ϣ
|
|
|
|
|
char c;
|
|
|
|
|
read();
|
|
|
|
|
while(1)
|
|
|
|
|
{
|
|
|
|
|
system("cls");
|
|
|
|
|
flag = 0;
|
|
|
|
|
printf("\t\t<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɾ<EFBFBD><EFBFBD>ְ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>Ĺ<EFBFBD><EFBFBD>ţ<EFBFBD>");
|
|
|
|
|
scanf("%s",delete_ID);
|
|
|
|
|
for(i = 0 ; i < n ; i ++)
|
|
|
|
|
{
|
|
|
|
|
if( strcmp(work[i].ID,delete_ID) == 0)
|
|
|
|
|
{
|
|
|
|
|
n --;
|
|
|
|
|
flag = 1;
|
|
|
|
|
for(j = i ; j < n ; j ++)
|
|
|
|
|
{
|
|
|
|
|
work[j] =work[j + 1];
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
if(!flag) printf("\n\n\t\t<EFBFBD><EFBFBD>Ա<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD>\n\n");
|
|
|
|
|
else printf("\n\n\t\tɾ<EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD>\n");
|
|
|
|
|
printf("\n\n\t\t<EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɾ<EFBFBD><EFBFBD>(Y/N):");
|
|
|
|
|
scanf("%*c%c",&c);
|
|
|
|
|
if(c == 'N' || c == 'n') break;
|
|
|
|
|
}
|
|
|
|
|
write();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//<2F>˵<EFBFBD>ģ<EFBFBD><C4A3>
|
|
|
|
|
void menu()//<2F>˵<EFBFBD>
|
|
|
|
|
{
|
|
|
|
|
//printf("\t\t************ְ<><D6B0><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>ϵͳ<CFB5>˵<EFBFBD>**********\n");
|
|
|
|
|
printf("\n\n");
|
|
|
|
|
printf("\t\t|====================================================|\n");
|
|
|
|
|
printf("\t\t| ѧ<><D1A7><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>ϵͳ |\n");
|
|
|
|
|
printf("\t\t|====================================================|\n");
|
|
|
|
|
printf("\t\t|* *|\n");
|
|
|
|
|
printf("\t\t| 1.¼<><C2BC>ְ<EFBFBD><D6B0><EFBFBD><EFBFBD>Ϣ |\n");
|
|
|
|
|
printf("\t\t| |\n");
|
|
|
|
|
printf("\t\t| 2.<2E><>ʾְ<CABE><D6B0><EFBFBD><EFBFBD>Ϣ |\n");
|
|
|
|
|
printf("\t\t| |\n");
|
|
|
|
|
printf("\t\t| 3.<2E><>ѯְ<D1AF><D6B0><EFBFBD><EFBFBD>Ϣ |\n");
|
|
|
|
|
printf("\t\t| |\n");
|
|
|
|
|
printf("\t\t| 4.<2E><EFBFBD>ְ<EFBFBD><D6B0><EFBFBD><EFBFBD>Ϣ |\n");
|
|
|
|
|
printf("\t\t| |\n");
|
|
|
|
|
printf("\t\t| 5.ɾ<><C9BE>ְ<EFBFBD><D6B0><EFBFBD><EFBFBD>Ϣ |\n");
|
|
|
|
|
printf("\t\t| |\n");
|
|
|
|
|
printf("\t\t| 0.<2E>˳<EFBFBD> |\n");
|
|
|
|
|
printf("\t\t|* *|\n");
|
|
|
|
|
printf("\t\t|====================================================|\n");
|
|
|
|
|
printf("\t\t\n");
|
|
|
|
|
printf("\t\t<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD>(0-5): ");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
int main()
|
|
|
|
|
{
|
|
|
|
|
int num;
|
|
|
|
|
n = 0;
|
|
|
|
|
system("color 0B");
|
|
|
|
|
while(1)
|
|
|
|
|
{
|
|
|
|
|
menu(); //<2F><><EFBFBD>ò˵<C3B2>
|
|
|
|
|
scanf("%d",&num);
|
|
|
|
|
system("cls");
|
|
|
|
|
switch(num)
|
|
|
|
|
{
|
|
|
|
|
case 1: input(); break;
|
|
|
|
|
case 2: show(); break;
|
|
|
|
|
case 3: que(); break;
|
|
|
|
|
case 4: mod(); break;
|
|
|
|
|
case 5: del(); break;
|
|
|
|
|
case 0: printf("\t\tллʹ<EFBFBD>ã<EFBFBD>\n\n"); return 0;
|
|
|
|
|
default :printf("\n\t\t---><3E><>Ч<EFBFBD><D0A7>ָ<EFBFBD><D6B8>!\n\n\n");
|
|
|
|
|
}
|
|
|
|
|
system("pause");
|
|
|
|
|
system("cls");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|