From 822cdc015c15385af918ef536214e75ba65fd1a5 Mon Sep 17 00:00:00 2001 From: "17406200202@stu.hut.edu.cn" <17406200202@stu.hut.edu.cn> Date: Thu, 10 Jan 2019 11:36:40 +0800 Subject: [PATCH] third commit --- 完整代码.cpp | 822 +++++++++++++++++++++++++++++++++++++++++++++++ 完整代码.exe | Bin 0 -> 148795 bytes 盛翔宇.cpp | 526 ++++++++++++++++++++++++++++++ 胡羽薇.cpp | 343 ++++++++++++++++++++ 4 files changed, 1691 insertions(+) create mode 100644 完整代码.cpp create mode 100644 完整代码.exe create mode 100644 盛翔宇.cpp create mode 100644 胡羽薇.cpp diff --git a/完整代码.cpp b/完整代码.cpp new file mode 100644 index 0000000..ed7fac9 --- /dev/null +++ b/完整代码.cpp @@ -0,0 +1,822 @@ +#include +#include +#include +#include +struct record +{ + char nativeplace[20]; + char name[20]; + char phone1[20]; + char phone2[20]; + char e_mail[30]; +}student[500]; +int num=0;//ⲿnumΪļеļ¼ +FILE *fp; +void welcome(); //ӭ +void mainmenu(); //˵ +void newrecord(); //¼ +void modify(); //޸ϵ + void modifyname(); //޸ + void modifyphone1(); //绰1޸ + void modifyphone2(); //绰2޸ +void searchmenu(); //ѯ˵ +void searchbynativeplace(); //ѯ +void searchbyname(); //ѯ +void searchbyphone1(); //绰1ѯ +void searchbyphone2(); //绰2ѯ +void deletemenu(); //ɾ˵ + void deleteall(); //ɾ + void deleteone(); //ɾ +void showall(); //ʾ +void readfromfile(); //ȡļ +void writetofile(); //дļ +void deletebynativeplace(); //ɾ +void deletebyname(); //ɾ +void listbynativeplace(); // +void listbyname(); // +void listmenu(); //˵ +int main() // +{ + welcome(); + readfromfile(); + while (1) + { + mainmenu(); + } +} +void welcome()//ӭ + { + printf("\n\n\n\n\n\n"); + printf("\t\t\t============ͨѶ¼==============\n"); + printf("\n\n\n"); + printf("\t\t\t ӭʹã \n"); + printf("\n\n\n"); + printf("\t\t\t================================\n"); + getch(); + return; +} +void writetofile()//дļ +{ + int i; + if ((fp=fopen("student.bin","wb"))==NULL) + { + printf("\n\t\tļʧ"); + } + for (i=0;i0) /*ļΪ*/ + { + rewind(fp); /*ļλָƶļʼλ*/ + for (num=0;!feof(fp) && fread(&student[num],sizeof(struct record),1,fp);num++); + printf("\n\t\tļɹ"); + printf("\n\t\t˵"); + getch(); + return; + } + printf("\n\t\tļɹ"); + printf("\n\t\tͨѶ¼ļκμ¼"); + printf("\n\t\t˵"); + getch(); + return; +}//ļ +void mainmenu()//˵ +{ + char choic; + system("cls"); + printf("\n\t\t******************* ˵ ********************"); + printf("\n\t\t********** 1-¼ 2-޸ļ¼ *************"); + printf("\n\t\t********** 3-ѯ˵ 4-ɾ¼ *************"); + printf("\n\t\t********** 5-¼ 6-˳ *************"); + printf("\n\t\t********** 7-˳ *************"); + printf("\n\t\t************************************************"); + printf("\n\t\tѡ"); + choic=getch(); + switch (choic) + { + case '1':newrecord();break; + case '2':modify();break; + case '3':searchmenu();break; + case '4':deletemenu();break; + case '5':listmenu();break; + case '6':writetofile();break; + case '7':exit(0); + default:mainmenu(); + } +} +void newrecord()//Ӽ¼ +{ + printf("\n\t\t**************** ϵϢ ****************\n"); + printf("\n\t\t뼮:"); + scanf("%s",&student[num].nativeplace); + printf("\n\t\t:"); + scanf("%s",&student[num].name); + printf("\n\t\t绰1:"); + scanf("%s",&student[num].phone1); + printf("\n\t\t绰2:"); + scanf("%s",&student[num].phone2); + printf("\n\t\te-mail:"); + scanf("%s",&student[num].e_mail); + num++;/*ͳϵ˸*/ + printf("\n\t\tǷ?(Y/N):"); + if (getch()=='y') + newrecord(); + return; +}//ϵ + +void deletemenu()//ɾ˵ +{ + char choic; + if(num==0) + { + printf("\n\t\tԲļκμ¼"); + printf("\n\t\t˵"); + getch(); + return; + } + system("cls"); + printf("\n\t\t******************* ɾ˵ *******************"); + printf("\n\t\t*********** 1-ɾ 2-ɾ ***********"); + printf("\n\t\t*********** 3-˵ ***********"); + printf("\n\t\t************************************************"); + printf("\n\t\tѡ"); + choic=getch(); + switch (choic) + { + case '1':deleteall();break; + case '2':deleteone();break; + case '3':mainmenu();break; + default:mainmenu();break; + } +} +void deleteall()//ɾ +{ + printf("\n\t\tȷɾ?(y/n)"); + if (getch()=='y') + { + fclose(fp); + if ((fp=fopen("student.bin","wb"))==NULL) + { + printf("\n\t\tܴļɾʧ"); + readfromfile(); + } + num=0; + printf("\n\t\t¼ɾ˵"); + getch(); + return; + } + else + return; +} +void deletebyname()//ɾ +{ + int a=0; + int findmark=0; + int j; + int deletemark=0; + int i; + char name[20]; + printf("\n\t\tҪɾ"); + scanf("%s",name); + for (i=a;i=0); + student[j+1]=tmp; + } + } + printf("\n\t\tɹ,Ƿʾ?(y/n)"); + if (getch()=='y') + showall(); + return; +} +void listbyname()// +{ + int i,j; + struct record tmp; + for (i=1;i=0)); + student[j+1]=tmp; + } + } + printf("\n\t\tɹ,Ƿʾ?(y/n)"); + if (getch()=='y') + showall(); + return; +} diff --git a/完整代码.exe b/完整代码.exe new file mode 100644 index 0000000000000000000000000000000000000000..6ed4a53b609fc06c707a69d4885fa5e4b88c8cbd GIT binary patch literal 148795 zcmeFa3wTu3^*6lFBqRaB+Ypioq~>Na;o=nx zQO7YBuhmK`m1@M)s)HZkuOUga;3&vDehAKfswuD%Ki#q+d;(mFev~x_eVqC#`Yr-`M*Q_`ufZ)p; z)1>%h8L5;V3TUtn3@IG!E;v(a~6{4wgOs&!< z>l$?~`hcM>jtL<2b&e@0s~}Y-wE=uA?-Ejaet9CVb4;jCrYrf-29j@C4-cU{v7qzJ zaf;?){`Z29b$q#^S$EXS^fPlNN%Zm;5F7wsC&CrD;(mD|ZTgvGb0lTTi3rvrb3+j3 zfj{mi`NoZxl#M4K=ma16FFFR___HM60oKO>@TDMJlE{}g{miqnC7(3%!{B3iu1(}a z{wAvYnP-q4jmQ3U-7)wk<&r^o?6_rvkM;7@(R}3j@9+Pd8rWVVe`DOkR>?y7+CIwk zMeJ{0CPdD@U4jMx^evz<E9Q8B_(7%7IDUw`WRxfjK0|2b+s z=!=*mvnBh`zR>K8G&ys+{gILTRvV(Lzi-lu?p3FNZ%Y&%Kfn78U--yjpZoE#zV^=6 z-}@rt|I~max+9LZBZhlbe=tTIDDbKUfOgrR`H_%jqN9^RZ0}b3P>?eqispl+P>MIF z^BKg7oR_-yMw2iQ`8rb9jK#VmeLC`i<`0lLY>WN?V-eyO`~x=f>^Z3Y2^c(~?638V zw=cMw+;&5&R@#emUg{cHvwGFO(3H0KjnL`REPQR9hWqKX6<>O;{xCnhJHPF)vEs|& z`R>BqT_4oAhZPC|{**Yb!%+XlRR-$bE6}K+L7x|nxX9Sd!PwpYG45ge%YHV^$gVX) zcsuGw7{yhGinjhS$sax#9frJm+duGyclshzw}HWZ^98WZoOfz^`d1|7chT-?EMJr1 z3x6E#A{;LKElM=-cfRn}qVQo~+jb-R2hj5;y?f1`qP9cMb9WVHA#rkMeGhu0Z(qltt2Q#P+rJjb4S+ zBKEKDfrgbkXjm6s61X`3qWp`uyEhe%Sa8rTy9DYB*6=nG{RKOnYVr2JqM5b~10Fqx zTBMbiVREuLDu-;S0ako&JXoLmZq* z+G^-{N$Ge3!7c~Wjs9+`5C?BUyf^32!2{oPcZat|Uk7b9_|^FJH!@4JjJ^yDi|+io zyL&YvF^%HxQl;cnk9oJr&UExVn<8=StS}OTY^0ujYgAc#<$aQZeQe23FY`!83tczdD=z z>AS%X(hiCpASrCmS7MXn#Rh?A0L6BIM`h-RQbDSV)JGNEpYVNvqaC;%G*Kr=|KmnO z_AuCxnVV8X~(^=KodMAoJm(}vx zWH5B3UO;#!;OGY2x=sV>ERvp3(X$CZpx`qJ|B$ThxE*DOsgKS>)UAqlEO{Fg93Z?< z!4bl96}*Y?xeERR;b{tXUjR5)!DkU31vuItw;R0O?iak>ZPA>zBaWr#hdX^81KU|J zSnUbmjF>iG)m|VeKzzpD?gLR&gXkI?{V6taU1vncVc*j=GP)Ag-gQ#+qoD|nk3Npx z-Icb5dZPDC!YvcS8;h46>t-HQ%YJ6D4e@|&&>#Ii;E4VGdet0z*>%3YQ>N<+Zv)ex zDe#06c%SekQecA?=!8IN8iaOfp|(y_2|iBd$)1G^GG^V zMLWsbSHa^5cVn*vo&|(IRq&4U0sl$C9}#{BaP&poEK@p?8|vS7WNc_a+mW2s^ym

q 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 +#include +#include +#include +struct record +{ + char nativeplace[20]; + char name[20]; + char phone1[20]; + char phone2[20]; + char e_mail[30]; +}student[500]; +int num=0;//ⲿnumΪļеļ¼ +FILE *fp; +void welcome(); //ӭ +void mainmenu(); //˵ +void newrecord(); //¼ +void modify(); //޸ϵ + void modifyname(); //޸ + void modifyphone1(); //绰1޸ + void modifyphone2(); //绰2޸ +void searchmenu(); //ѯ˵ +void searchbynativeplace(); //ѯ +void searchbyname(); //ѯ +void searchbyphone1(); //绰1ѯ +void searchbyphone2(); //绰2ѯ +void deletemenu(); //ɾ˵ + void deleteall(); //ɾ + void deleteone(); //ɾ +void showall(); //ʾ +void readfromfile(); //ȡļ +void writetofile(); //дļ +void deletebynativeplace(); //ɾ +void deletebyname(); //ɾ +void listbynativeplace(); // +void listbyname(); // +void listmenu(); //˵ +int main() // +{ + welcome(); + readfromfile(); + while (1) + { + mainmenu(); + } +} +void showall()//ʾ +{ + int i; + system("cls"); + if(num!=0) + { + printf("\n\t\t*************** ΪͨѶ¼Ϣ************"); + for (i=0;i=0); + student[j+1]=tmp; + } + } + printf("\n\t\tɹ,Ƿʾ?(y/n)"); + if (getch()=='y') + showall(); + return; +} +void listbyname()// +{ + int i,j; + struct record tmp; + for (i=1;i=0)); + student[j+1]=tmp; + } + } + printf("\n\t\tɹ,Ƿʾ?(y/n)"); + if (getch()=='y') + showall(); + return; +} +void deletemenu()//ɾ˵ +{ + char choic; + if(num==0) + { + printf("\n\t\tԲļκμ¼"); + printf("\n\t\t˵"); + getch(); + return; + } + system("cls"); + printf("\n\t\t******************* ɾ˵ *******************"); + printf("\n\t\t*********** 1-ɾ 2-ɾ ***********"); + printf("\n\t\t*********** 3-˵ ***********"); + printf("\n\t\t************************************************"); + printf("\n\t\tѡ"); + choic=getch(); + switch (choic) + { + case '1':deleteall();break; + case '2':deleteone();break; + case '3':mainmenu();break; + default:mainmenu();break; + } +} +void deleteall()//ɾ +{ + printf("\n\t\tȷɾ?(y/n)"); + if (getch()=='y') + { + fclose(fp); + if ((fp=fopen("student.bin","wb"))==NULL) + { + printf("\n\t\tܴļɾʧ"); + readfromfile(); + } + num=0; + printf("\n\t\t¼ɾ˵"); + getch(); + return; + } + else + return; +} +void deletebyname()//ɾ +{ + int a=0; + int findmark=0; + int j; + int deletemark=0; + int i; + char name[20]; + printf("\n\t\tҪɾ"); + scanf("%s",name); + for (i=a;i +#include +#include +#include +struct record +{ + char nativeplace[20]; + char name[20]; + char phone1[20]; + char phone2[20]; + char e_mail[30]; +}student[500]; +int num=0;//ⲿnumΪļеļ¼ +FILE *fp; +void welcome(); //ӭ +void mainmenu(); //˵ +void newrecord(); //¼ +void modify(); //޸ϵ + void modifyname(); //޸ + void modifyphone1(); //绰1޸ + void modifyphone2(); //绰2޸ +void searchmenu(); //ѯ˵ +void searchbynativeplace(); //ѯ +void searchbyname(); //ѯ +void searchbyphone1(); //绰1ѯ +void searchbyphone2(); //绰2ѯ +void deletemenu(); //ɾ˵ + void deleteall(); //ɾ + void deleteone(); //ɾ +void showall(); //ʾ +void readfromfile(); //ȡļ +void writetofile(); //дļ +void deletebynativeplace(); //ɾ +void deletebyname(); //ɾ +void listbynativeplace(); // +void listbyname(); // +void listmenu(); //˵ +int main() // +{ + welcome(); + readfromfile(); + while (1) + { + mainmenu(); + } +} +void welcome()//ӭ + { + printf("\n\n\n\n\n\n"); + printf("\t\t\t============ͨѶ¼==============\n"); + printf("\n\n\n"); + printf("\t\t\t ӭʹã \n"); + printf("\n\n\n"); + printf("\t\t\t================================\n"); + getch(); + return; +} +void readfromfile()//ļ +{ + system("cls"); + if((fp=fopen("student.bin","rb"))==NULL) + { + printf("\n\t\tͨѶ¼ļ"); + if ((fp=fopen("student.bin","wb"))==NULL) + { + printf("\n\t\tʧ"); + exit(0); + } + else + { + printf("\n\t\tͨѶ¼ļѽ"); + printf("\n\t\t˵"); + getch(); + return; + } + exit(0); + } + fseek(fp,0,2); /*ļλָƶļĩβ*/ + if (ftell(fp)>0) /*ļΪ*/ + { + rewind(fp); /*ļλָƶļʼλ*/ + for (num=0;!feof(fp) && fread(&student[num],sizeof(struct record),1,fp);num++); + printf("\n\t\tļɹ"); + printf("\n\t\t˵"); + getch(); + return; + } + printf("\n\t\tļɹ"); + printf("\n\t\tͨѶ¼ļκμ¼"); + printf("\n\t\t˵"); + getch(); + return; +}//ļ +void mainmenu()//˵ +{ + char choic; + system("cls"); + printf("\n\t\t******************* ˵ ********************"); + printf("\n\t\t********** 1-¼ 2-޸ļ¼ *************"); + printf("\n\t\t********** 3-ѯ˵ 4-ɾ¼ *************"); + printf("\n\t\t********** 5-¼ 6-˳ *************"); + printf("\n\t\t********** 7-˳ *************"); + printf("\n\t\t************************************************"); + printf("\n\t\tѡ"); + choic=getch(); + switch (choic) + { + case '1':newrecord();break; + case '2':modify();break; + case '3':searchmenu();break; + case '4':deletemenu();break; + case '5':listmenu();break; + case '6':writetofile();break; + case '7':exit(0); + default:mainmenu(); + } +} +void newrecord()//Ӽ¼ +{ + printf("\n\t\t**************** ϵϢ ****************\n"); + printf("\n\t\t뼮:"); + scanf("%s",&student[num].nativeplace); + printf("\n\t\t:"); + scanf("%s",&student[num].name); + printf("\n\t\t绰1:"); + scanf("%s",&student[num].phone1); + printf("\n\t\t绰2:"); + scanf("%s",&student[num].phone2); + printf("\n\t\te-mail:"); + scanf("%s",&student[num].e_mail); + num++;/*ͳϵ˸*/ + printf("\n\t\tǷ?(Y/N):"); + if (getch()=='y') + newrecord(); + return; +}//ϵ +void modify()//޸ϵ +{ + char c; + int mark=0; + int i; + int a=0; + if(num==0) + { + printf("\n\t\tԲļκμ¼"); + printf("\n\t\t˵"); + getch(); + return; + } + system("cls"); + printf("\n\t\t********* ޸ϵ˲˵ *********"); + printf("\n\t\t** 1-޸ 2-绰1޸ **"); + printf("\n\t\t** 3-绰2޸ **"); + printf("\n\t\t********-˵*********"); + c=getch(); + switch(c) + { + case '1':modifyname();break; + case '2':modifyphone1();break; + case '3':modifyphone2();break; + default:mainmenu();break; + } +} +void modifyname()//޸ +{ + char choic; + int i; + int mark=0; + int a=0; + char name[20]; + printf("\n\t\tҪ޸ϵ"); + scanf("%s",name); + for(i=0;i