/*ͨѶ¼¹ÜÀíϵͳ*/
#include//±ê×¼ÊäÈëÊä³öÍ·Îļþ
#include//°üº¬×î³£ÓõÄϵͳº¯Êý
#include//¹ØÓÚ×Ö·ûÊý×éµÄº¯Êý¶¨ÒåµÄÍ·Îļþ
struct Contacts { /*½á¹¹¶¨Òå*/
char name[10];
char address[30];
char birthday[10];
char phonenumber[15];
char mail[20];
char zipcode[8];
};
void add(struct Contacts recode[]); //Ìí¼ÓͨѶ¼º¯Êý
void search(struct Contacts recode[]);//²éѯͨѶ¼º¯Êý
void show(struct Contacts recode[]);//ÏÔʾͨѶ¼º¯Êý
void modify(struct Contacts recode[]);//ÐÞ¸ÄͨѶ¼º¯Êý
void remove(struct Contacts recode[]); // ɾ³ýͨѶ¼º¯Êý
void logout(struct Contacts recode[]);//Í˳öͨѶ¼º¯Êý
/*mainº¯Êý£¬½øÐÐÖ÷½çÃæÉè¼Æ£¬µ÷Óø÷º¯Êý*/
int main(void)
{
int choice,i;
struct Contacts recode[10];//
FILE *fp;
printf(" ¡î¡î¡î¡î¡îͨѶ¼³ÌÐòÉè¼Æ ¡î¡î¡î¡î¡î \n");
printf(" 0: °´0½øÐÐϵͳ³õʼ»¯\n");
printf(" 1: °´1¿ªÊ¼Ê¹ÓÃϵͳ!\n");
printf(" ÇëÊäÈëÄúµÄÑ¡Ôñ£º");
scanf("%d",&i);
if(i==0){
if((fp=fopen("A:\\C-program\\Project.txt","w+"))==NULL){
printf("File open error!");
exit(0);//Õý³£Í˳ö
}
if(fclose(fp)){
printf("can not close the file!");
exit(0);
}
}
else if(i==1);
system("pause");
system("cls");//ÇåÆÁ
do{
printf(" ͨѶ¼¹ÜÀíϵͳ \n");
printf(" |-------------------------|\n");
printf(" | Ñ¡Ôñ[1]:Ìí¼ÓͨѶ¼Ç¼ |\n");
printf(" | Ñ¡Ôñ[2]:ÐÞ¸ÄͨѶ¼Ç¼ |\n");
printf(" | Ñ¡Ôñ[3]:ɾ³ýͨѶ¼Ç¼ |\n");
printf(" | Ñ¡Ôñ[4]:²éѯͨѶ¼Ç¼ |\n");
printf(" | Ñ¡Ôñ[5]:ÏÔʾͨѶ¼Ç¼ |\n");
printf(" | Ñ¡Ôñ[0]:Í˳öͨѶ¼Ç¼ |\n");
printf(" |-------------------------|\n");
printf("\n");
printf(" ÇëÊäÈëÄúµÄÑ¡Ôñ: ");
scanf("%d",&choice);
switch(choice){
case 1:add(recode);
break;
case 2:modify(recode);
break;
case 3:remove(recode);
break;
case 4:search(recode);
break;
case 5:show(recode);
break;
case 0:
break;
default:
printf("\n");
printf(" ÄúµÄÑ¡ÔñÓÐÎó!\n");
printf("\n");
break;
}
}while(choice!=0&&choice<6);
printf("\n");
printf(" ллʹÓÃ!\n");
printf(" ¡ï¡ï¡ï¡ïÌì½ò¹¤Òµ´óѧÈÙÓþ³öÆ·¡ï¡ï¡ï¡ï\n");
printf(" ¡ï¡ï¡ï³öÆ·ÈË£ºÖÓ¿¡Òã¡ï¡ï¡ï\n");
return 0;
}
/*Ìí¼ÓͨѶ¼º¯Êý*/
void add(struct Contacts recode[])
{
int n,count=0,t,i,m; /*±äÁ¿n×÷ΪÊÇ·ñ±£´æÅжϣ¬tÅжÏÊÇ·ñ¼ÌÐøÌí¼Ó£¬iÑ»·Åжϣ¬m¼Ç»¹¿ÉÌí¼ÓÊýÄ¿*/
FILE *fp;
struct Contacts s,p; /*¶¨Òåнṹs±£´æÐÂÊäÈëÐÅÏ¢,нṹp±£´æÔÀ´ÒѾ±£´æÔÚÎļþµÄÐÅÏ¢*/
if((fp=fopen("A:\\C-program\\Project.txt","a+"))==NULL){
printf("File open error!");
exit(0);
}
while(!feof(fp)){ /*¼ÆËãÎļþÖÐÒÑÓмǼÊýcount*/
fscanf(fp,"%s%s%s%s%s%s\n",&p.name,&p.phonenumber,&p.address,&p.birthday,&p.mail,&p.zipcode);/*½«Êý¾Ý±£´æÔÚнṹ±äÁ¿ÖÐ*/
count++;
}
printf(" |*****************¿ªÊ¼Ìí¼Ó****************|\n");
printf(" |*******************×¢Òâ:µØÖ·²»Òª³¬¹ýÊ®¸ö×Ö*******************| \n");
for(i=0;i<10;i++){
printf(" ÐÕÃû£º");
scanf("%s",&s.name);
printf(" µç»°ÊÖ»ú£º");
scanf("%s",&s.phonenumber);
printf(" סַ£º");
scanf("%s",&s.address);
printf(" ÉúÈÕ£º");
scanf("%s",&s.birthday);
printf(" ÓÊÏ䣺");
scanf("%s",&s.mail);
printf(" Óʱࣺ");
scanf("%s",&s.zipcode);
printf(" ±£´æ¼Ç¼Çë°´1£¬·ñÔò°´ÆäËûÊý×Ö!\n");
printf(" ÊäÈëÄúµÄÑ¡Ôñ£º");
scanf("%d",&n);
if(n==1){
fprintf(fp,"%-7s%-12s%-22s%-10s%-20s%-3s\n",s.name,s.phonenumber,s.address,s.birthday,s.mail,s.zipcode);
printf(" ±£´æ³É¹¦!\n");
count++;
system("pause");
system("cls");
}
else if(n!=1){
system("cls");
break;
}
if(count<=10){
system("cls"); /*Ò»´Î¼Ç¼±£´æºóÇåÆÁ*/
m=10-count;
printf(" ÄúÒѾÊäÈëÁË%d¸ö¼Ç¼£¬»¹¿ÉÒÔÊäÈë%d¸ö!\n",count,m);
}
else{
printf(" ÄúµÄͨѶ¼ÒÑÂú!\n");
system("cls");
}
printf(" °´0Í˳öÌí¼Ó,°´ÆäËûÊý×Ö¼ÌÐøÌí¼Ó!\n");
scanf("%d",&t);
if(t==0){
system("cls");
break;
}
}
if(fclose(fp)){
printf("can not cloce the file!");
exit(0);
}
}
/*²éѯͨѶ¼º¯Êý*/
void search(struct Contacts recode[])
{
struct Contacts s,p; /*¶¨ÒåÁ½¸öнṹ±äÁ¿£¬sÓÃÀ´±£´æÒª²éѯµÄij¸öÏîÄ¿£¬pÓÃÀ´±£´æ²éѯµ½ÐèÊä³ö½á¹¹¸÷ÏîÄ¿*/
int flag,a,l; /*flag×÷ΪÅжϲéѯ¿ªÊ¼£¬aΪÅжϲéѯ·½Ê½£¬lΪÅжÏÊÇ·ñÍ˳ö²éѯ*/
FILE *fp;
if((fp=fopen("A:\\C-program\\Project.txt","r+"))==NULL){
printf("File open error!");
exit(0);
}
printf(" °´0Ñ¡ÔñÐÕÃû²éѯ£¬°´1Ñ¡ÔñºÅÂë²éѯ!\n");
printf(" ÊäÈëÄúµÄÑ¡Ôñ£º");
scanf("%d",&a);
if(a==0){ /*ÓÃÐÕÃû²éѯ*/
printf(" ÊäÈëÒª²éѯµÄÐÕÃû£º");
scanf("%s",&s.name);
while(!feof(fp)){
fscanf(fp,"%s%s%s%s%s%s",&p.name,&p.phonenumber,&p.address,&p.birthday,&p.mail,&p.zipcode);/*½«Êý¾Ý±£´æÔÚнṹ±äÁ¿ÖÐ*/
if(strcmp(s.name,p.name)==0){
flag=1;
break;
}
}
if(flag==1){
printf("|-----------------------------------------------------------------------------|\n");
printf("| ÐÕÃû ºÅÂë µØÖ· ÉúÈÕ ÓÊÏä Óʱà |\n");
printf("|-----------------------------------------------------------------------------|\n");
printf("| %-7s%-12s%-22s%-10s%-20s%-3s |\n",p.name,p.phonenumber,p.address,p.birthday,p.mail,p.zipcode);/*Êä³öнṹÖÐÏîÄ¿*/
printf("|-----------------------------------------------------------------------------|\n");
printf(" °´0Í˳ö²éѯ!\n");
scanf("%d",&l);
if(l==0)
system("cls");
}
else{
printf(" ÄúµÄͨѶ¼ÖÐûÓд˼Ǽ!\n");
printf(" °´0Í˳ö²éѯ!\n");
scanf("%d",&l);
if(l==0)
system("cls");
}
}
else if(a==1){ /*ÓúÅÂë²éѯ*/
printf(" ÊäÈëÒª²éѯµÄºÅÂ룺");
scanf("%s",&s.phonenumber);
while(!feof(fp)){
fscanf(fp,"%s%s%s%s%s%s",&p.name,&p.phonenumber,&p.address,&p.birthday,&p.mail,&p.zipcode);/*½«Êý¾Ý±£´æÔÚнṹ±äÁ¿ÖÐ*/
if(strcmp(s.phonenumber,p.phonenumber)==0){
flag=1;
break;
}
}
if(flag==1){
printf("|-----------------------------------------------------------------------------|\n");
printf("| ÐÕÃû ºÅÂë µØÖ· ÉúÈÕ ÓÊÏä ¹ØÏµ |\n");
printf("|-----------------------------------------------------------------------------|\n");
printf("| %-7s%-12s%-22s%-10s%-20s%-3s |\n",p.name,p.phonenumber,p.address,p.birthday,p.mail,p.zipcode); /*Êä³öнṹÖÐÏîÄ¿*/
printf("|-----------------------------------------------------------------------------|\n");
printf(" °´0Í˳ö²éѯ!\n");
scanf("%d",&l);
if(l==0)
system("cls");
}
else{
printf(" ÄúµÄͨѶ¼ÖÐûÓд˼Ǽ!\n");
printf(" °´0Í˳ö²éѯ!\n");
scanf("%d",&l);
if(l==0)
system("cls");
}
}
if(fclose(fp)){
printf("can not cloce the file!");
exit(0);
}
}
/*ÏÔʾͨѶ¼º¯Êý*/
void show(struct Contacts recode[])
{
struct Contacts p; /*¶¨Òåнṹ±äÁ¿±£´æÒªÏÔʾµÄÐÅÏ¢*/
int l,i,j,n=0,m;
FILE *fp;
if((fp=fopen("A:\\C-program\\Project.txt","r+"))==NULL){
printf("File open error!");
exit(0);//Õý³£Í˳ö
}
for(j=0;j<10;j++){
if(feof(fp))
break;
fscanf(fp,"%s%s%s%s%s%s",&p.name,&p.phonenumber,&p.address,&p.birthday,&p.mail,&p.zipcode); /*½«Êý¾Ý±£´æÔÚнṹ±äÁ¿ÖÐ*/
n++;
}
if(n==1){
printf(" ###################################\n");
printf(" ### Äú»¹Ã»ÓÐÌí¼ÓÈκÎÁªÏµÈË! ###\n");
printf(" ###################################\n");
}
else{
m=ftell(fp); /*ÓÃwhile£¨£¡feof£¨fp£©£©Ö±½ÓÑ»·»áÊÇ×îºóÒ»ÌõÐÅÏ¢ÏÔʾÁ½´Î£¬´Ë´¦½â¾ö´ËÎÊÌâ*/
fseek(fp,-m,1); /*½«ÎļþÖ¸ÕëÒÆÏò¿ªÍ·*/
printf(" ##################################\n");
printf(" ### Äú×ܹ²ÓÐÒÔÏÂ%d¸öÁªÏµÈË! ###\n",n-1);
printf(" ##################################\n");
printf("|-----------------------------------------------------------------------------|\n");
printf("| ***************ͨѶ¼************** |\n");
printf("|-----------------------------------------------------------------------------|\n");
printf("| ÐÕÃû ºÅÂë µØÖ· ÉúÈÕ ÓÊÏä Óʱà |\n");
printf("|-----------------------------------------------------------------------------|\n");
for(j=0;j