#include
#include
#include
#include
void add();
void main_menue();
void print_menus(int menu_ind );
void delete_con();
void delete_all();
void delete_by_name();
void delete_by_xvhao();
void delete_single_con();
void modify();
void modify_name();
void modify_xvhao();
void search();
void search_all();
void search_by_name();
void search_by_xvhao();
void readfile();
void writefile();
void pingjunfen();
void paiming();
struct catalog
{
char name[20];
char xvhao[10];
int chengji[10];
int pingjunfen;
int paiming[10];
};
struct catalog cj[100];
FILE *fp;
int n=0;
////////////////////////////////////////////////////////////////////////////////////////////
// search functions
///////////////////////////////////////////////////////////////////////////////////////////
int main()
{
readfile();
while(1)
{
main_menue();
}
return 0;
}
void main_menue()
{
char ch;
system("cls");
print_menus(1);
ch=getchar();
switch(ch)
{
case '1': add();break;
case '2': search();break;
case '3': delete_con();break;
case '4': modify();break;
case '5': writefile();break;
case '6': paiming();break;
case '0': exit(0);break;
default: main_menue();
}
}
void print_menus(int menu_ind)
{
switch (menu_ind)
{
case 0:
printf("\n\t------------------------------------");
printf("\n\t\t ");
printf("\n\t\t ");
printf("\n\t---------------------------------------------------------");
break;
case 1: //Main_menu
printf("\n\t\t|-----------------------------|");
printf("\n\t\t| 1- 2-\t\t|");
printf("\n\t\t| 3- 4- \t\t|");
printf("\n\t\t| 5- 0- \t\t|");
printf("\n\t\t| 6- \t\t|");
printf("\n\t\t|-------------------------------------------------------|");
printf("\n\t\t:");
break;
case 2:
printf("\n\t\t------------------- -------------|");
printf("\n\t\t| 1- 2- \t\t\t|");
printf("\n\t\t| 3- 4- \t\t\t|");
printf("\n\t\t|-----------------------------------------------|");
printf("\n\t\t:");
break;
case 3:
printf("\n\t\t----------------- ---------------------|");
printf("\n\t\t| 1- 2- \t\t\t|");
printf("\n\t\t| 3- 4- \t\t\t|");
printf("\n\t\t|-----------------------------------------------|");
printf("\n\t\t:");
break;
case 4:
printf("\n\t\t----------------------------------|");
printf("\n\t\t| 1- 2- \t\t\t|");
printf("\n\t\t| 4- \t\t\t|");
printf("\n\t\t--------------------------------------------------|");
printf("\n\t\t:");
break;
case 5:
printf("\n\t\t---------------------------------|");
printf("\n\t\t| 1- 2- \t\t|");
printf("\n\t\t| 3- \t\t|");
printf("\n\t\t-----------------------------------------------|");
printf("\n\t\t:");
break;
}
}
void add()
{
printf("\n\t\t--------------------------------");
printf("\n\t\t:");
scanf("%s",cj[n].xvhao);
printf("\n\t\t:");
scanf("%s",cj[n].name);
printf("\n\t\t:");
scanf("%d",cj[n].chengji[0]);
printf("\n\t\t:");
scanf("%d",cj[n].chengji[1]);
printf("\n\t\t:");
scanf("%d",cj[n].chengji[2]);
printf("\n\t\t:");
scanf("%d",cj[n].chengji[3]);
printf("\n\t\t:");
scanf("%d",cj[n].chengji[4]);
printf("\n\t\t:");
scanf("%d",cj[n].chengji[5]);
printf("\n\t\t:");
scanf("%d",cj[n].chengji[6]);
printf("\n\t\t:");
scanf("%d",cj[n].chengji[7]);
printf("\n\t\t:");
scanf("%d",cj[n].chengji[8]);
printf("\n\t\t:");
scanf("%d",cj[n].chengji[9]);
n++;
printf("\n\t\t?(Y/N):");
if (getch()=='y')
add();
}
void pingjunfen()
{
static int i,j,sum,max,min;
for(i=0;imax)
max=cj[i].chengji[j];
if(cj[i].chengji[j]0)
{
rewind(fp);
for (n=0;!feof(fp) fread(cj[n],sizeof(struct catalog),1,fp);n++) ;
}
printf("\n\t\t ");
if(n==0) printf("\n\t\t ");
printf("\n\t\t ");
printf("\n\t---------------------------------------------------------");
getch();
}
void writefile()
{
int i;
if ((fp=fopen("c:\\.txt","w"))==NULL)
{
printf("\n\t\t");
}
for (i=0;i {
if (fwrite(cj[i],sizeof(struct catalog),1,fp)!=1)
{
printf("\n\t\t!\n");
}
}
fclose(fp);
print_menus("Save_file_message");
exit(0);
}