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

📄 student.c

📁 学生通讯录管理系统
💻 C
📖 第 1 页 / 共 2 页
字号:
	printf("\n********************************************************************************\n");
    printf("------学    号:%s\n",xinxi.number);
	printf("------姓    名:%s\n",xinxi.name);
	printf("------班    级:%s\n",xinxi.banji);
    printf("------寝室电话:%s\n",xinxi.dormphone);
    printf("------电话区号:%s\n",xinxi.quhao);
    printf("------家庭电话:%s\n",xinxi.familyphone);
    printf("------手    机:%s\n",xinxi.mobilephone);
    printf("------ E-mail :%s\n",xinxi.email);
    printf("------家庭住址:%s\n",xinxi.address);
    printf("------邮政编码:%s\n",xinxi.youbian);
    printf("\n********************************************************************************\n");
}
void chaxun() //查询
{
   int xuhao,i,j;
   FILE*fp;
   printf("\n请输入查询方式: 1:学号  2:姓名  3:班级\n");
   scanf("%d",&xuhao);getchar();
   while(xuhao>3)
   {
	printf("\n你输入有误 请重新输入:");
    scanf("%d",&xuhao);
    getchar();
   }
   switch(xuhao)
   {
   case 1:printf("请输入学号:\n");
	     gets(jiancha0.number);
	     fp=fopen("stu_xinxi","rb");j=1;
	     do
		 {
		   if(feof(fp)) {j=0;break;}
           fread(&xinxi,sizeof(struct xinxi),1,fp);
           if(strcmp(xinxi.number,jiancha0.number)==0) 
		   {daying();j=0;}
		 }while(!feof(fp));
	    if(j==1) printf("对不起 你找的学号不存在\n");
	    fclose(fp);break;	     
    case 2:printf("请输入姓名:\n");
	     gets(jiancha0.name);
	     fp=fopen("stu_xinxi","rb");j=1;
	    do
		{
		   if(feof(fp)) {j=0;break;}
           fread(&xinxi,sizeof(struct xinxi),1,fp);
           if(strcmp(xinxi.name,jiancha0.name)==0) 
		   {daying();j=0;} 
		}while(!feof(fp));
       if(j==1) printf("对不起 你找的姓名不存在\n");
	   fclose(fp);break;	   
    case 3:printf("请输入班级:\n");
	      gets(jiancha0.banji);
	      fp=fopen("stu_xinxi","rb");j=1;
	     do
		 {
          fread(&xinxi,sizeof(struct xinxi),1,fp);
          if(strcmp(xinxi.banji,jiancha0.banji)==0) 
			{daying();j=0;} 
		 }while(!feof(fp));
         if(j==1) printf("对不起 你找的班级不存在\n");
	     fclose(fp);break;	   
}
printf("\n请选择需要服务的序号:1:继续查询 2:修改 3:删除 4:返回管理页面\n");
scanf("%d",&i);getchar();
while(i>4)
{
   printf("\n你输入有误 请重新输入:");
   scanf("%d",&i);
   getchar();
}
switch(i)
{
case 1:system("cls");chaxun();break;
case 2:system("cls");xiugai();break;  
case 3:system("cls");shanchu();break;
case 4:system("cls");jiemian();break;
}
}

void printall()  //显示所有通讯信息
{
 int i;
 FILE*fp;
 fp=fopen("stu_xinxi","rb");
 printf("\n所有学生通讯信息如下:\n");
 while(!feof(fp))
 {
    fread(&xinxi,sizeof(struct xinxi),1,fp);
    if(feof(fp)) break;
	daying();
 }
 printf("\n请选择需要服务的序号:1:返回管理页面 2:修改 3:删除 4:查询\n");
 scanf("%d",&i);
 getchar();
 while(i>4)
 {
   printf("\n你输入有误 请重新输入:");
   scanf("%d",&i);
   getchar();
 }
 switch(i)
 {
  case 1:system("cls");jiemian();break;
  case 2:xiugai();break;  
  case 3:shanchu();break;
  case 4:chaxun();break;
 }
}

void tongji()   //统计学生地区分布
{
   int heyuan=0,beijing=0,guangzhou=0,shaoguan=0,huizhou=0,meizhou=0,shantou=0,shenzhen=0,
   zhuhai=0,foshan=0,zhaoqin=0,zhanjiang=0,jiangmen=0,qingyuan=0,shunde=0,dongwan=0,zhongshan=0,
   maoming=0,shanwei=0,yangjiang=0,chaozhou=0,other=0,i;
   FILE*fp;
   fp=fopen("stu_xinxi","rb");
 while(!feof(fp))
 {
  fread(&xinxi,sizeof(struct xinxi),1,fp);
  if(feof(fp)) break;
  if(strcmp(xinxi.quhao,"010")==0)  beijing++;
	else if(strcmp(xinxi.quhao,"020")==0)  guangzhou++;
	else if(strcmp(xinxi.quhao,"0751")==0)  shaoguan++;
	else if(strcmp(xinxi.quhao,"0752")==0)  huizhou++;
	else if(strcmp(xinxi.quhao,"0753")==0)  meizhou++;
	else if(strcmp(xinxi.quhao,"0754")==0)  shantou++;
	else if(strcmp(xinxi.quhao,"0755")==0)  shenzhen++;
	else if(strcmp(xinxi.quhao,"0756")==0)  zhuhai++;
	else if(strcmp(xinxi.quhao,"0757")==0)  foshan++;
	else if(strcmp(xinxi.quhao,"0758")==0)  zhaoqin++;
	else if(strcmp(xinxi.quhao,"0759")==0)  zhanjiang++;
	else if(strcmp(xinxi.quhao,"0750")==0)  jiangmen++;
	else if(strcmp(xinxi.quhao,"0762")==0)  heyuan++;
	else if(strcmp(xinxi.quhao,"0763")==0)  qingyuan++;
	else if(strcmp(xinxi.quhao,"0765")==0)  shunde++;
    else if(strcmp(xinxi.quhao,"0768")==0)  chaozhou++;
	else if(strcmp(xinxi.quhao,"0769")==0)  dongwan++;
	else if(strcmp(xinxi.quhao,"0760")==0)  zhongshan++;
	else if(strcmp(xinxi.quhao,"0662")==0)  yangjiang++;
	else if(strcmp(xinxi.quhao,"0668")==0)  maoming++;
	else if(strcmp(xinxi.quhao,"0660")==0)  shanwei++;
	else other++;
}
fclose(fp);
printf("\n*******************************学生地区分布统计*********************************\n");
if(beijing>0)  printf("     北京:%d人",beijing);
if(guangzhou>0)  printf("     广州:%d人",guangzhou);
if(shaoguan>0)  printf("     韶关:%d人",shaoguan);
if(huizhou>0)  printf("     惠州:%d人",huizhou);
if(meizhou>0)  printf("     梅州:%d人",meizhou);
if(shantou>0)  printf("     汕头:%d人",shantou);
if(shenzhen>0)  printf("     深圳:%d人",shenzhen);
if(zhuhai>0)  printf("     珠海:%d人",zhuhai);
if(foshan>0)  printf("     佛山:%d人",foshan);
if(zhaoqin>0)  printf("     肇庆 :%d人",zhaoqin);
if(zhanjiang>0)  printf("    湛江:%d人",zhanjiang);
if(jiangmen>0)  printf("     江门:%d人",jiangmen);
if(heyuan>0)  printf("     河源:%d人",heyuan);
if(qingyuan>0)  printf("     清远:%d人",qingyuan);
if(shunde>0)  printf("      顺德:%d人",shunde);
if(chaozhou>0)  printf("     潮州:%d人",chaozhou);
if(dongwan>0)  printf("     东莞:%d人",dongwan);
if(zhongshan>0)  printf("     中山:%d人",zhongshan);
if(yangjiang>0)  printf("     阳江:%d人",yangjiang);
if(maoming>0)  printf("     茂名:%d人",maoming);
if(shanwei>0)  printf("     汕尾:%d人",shanwei);
if(other>0)    printf("     其他:%d人",other);
printf("\n\n********************************************************************************\n");
printf("\n请选择需要服务的序号:1:返回管理页面\n");
scanf("%d",&i);
getchar();
while(i>1)
{
  printf("\n你输入有误 请重新输入:");
  scanf("%d",&i);
  getchar();
}
switch(i)
{
  case 1:system("cls");jiemian();break;
}
}

void xiugaipw()  //修改密码
{
 FILE*fp;
 int i=0,j,xuhao;
 char password1[16],password2[16];
 fp=fopen("stu_list","rb");
 for(i=0;;i++)
 {fread(&zhuce1[i],sizeof(struct zhuce),1,fp);
  if(feof(fp)) break;
 }
 fclose(fp);
 for(i=0;;i++) 
 {
	 if(strcmp(zhuce.password,zhuce1[i].password)==0) {j=i;break;}
 }
 do
 {
   printf("\n请输入旧密码:");
   scanf("%s",jiancha.password);
   if(strcmp(jiancha.password,zhuce.password)==0) i=0;
   else printf("旧密码不正确!\n");
 }while(i==1);
 do
 {
   printf("\n请输入新密码:");
   scanf("%s",password1);
   printf("\n请再输入一遍:");
   scanf("%s",password2);
   if(strcmp(password1,password2)!=0)
    {printf("\n对不起 你输入的新密码前后不一致\n");i=1;}
 }while(i==1);
 strcpy(zhuce1[j].password,password2);
 fp=fopen("stu_list","wb");
 for(i=0;(strlen(zhuce1[i].name))!=0;i++)
 {fwrite(&zhuce1[i],sizeof(struct zhuce),1,fp);}
 fclose(fp);
 printf("\n请选择你需要服务的序号:1:返回管理界面\n");
 scanf("%d",&xuhao);
 getchar();
 while(xuhao>2)
 {
	printf("\n你输入有误 请重新输入:");
    scanf("%d",&xuhao);
    getchar();
 }
 if(xuhao==1) {system("cls");jiemian();}
}

void xiugai()   //修改学生通讯信息
{  
   FILE*fp;
   int i=0,j,xuhao;
   fp=fopen("stu_xinxi","rb");
   for(i=0;;i++)
     {fread(&xinxi0[i],sizeof(struct xinxi),1,fp);
      if(feof(fp)) break;
     }
   fclose(fp);
   printf("\n请输入需要修改信息的学号:");
   scanf("%s",xinxi.number);
   for(i=0;;i++) 
   {
     if(strcmp(xinxi.number,xinxi0[i].number)==0) {j=i;break;}
   }
   do
   {
   printf("\n请输入需要修改项目的序号:\n1:学号 2:姓名 3:班级 4:宿舍电话");
   printf("5:家庭所在地电话区号\n\t\t 6:家庭电话 7:手机 8:E-mail 9:家庭住址 10:邮政编码");
   scanf("%d",&i);
   getchar();
   while(i>10)
    {
     printf("\n你输入有误 请重新输入:");
     scanf("%d",&i);
     getchar();
    }
   switch(i)
   {
     case 1:printf("\n请输入新的学号:\n");gets(xinxi.number);
		    strcpy(xinxi0[j].number,xinxi.number);break;
     case 2:printf("\n请输入新的姓名:\n");gets(xinxi.name);
		    strcpy(xinxi0[j].name,xinxi.name);break;
     case 3:printf("\n请输入新的班级:\n");gets(xinxi.banji);
		    strcpy(xinxi0[j].banji,xinxi.banji);break;
     case 4:printf("\n请输入新的寝室电话:\n");gets(xinxi.dormphone);
		    strcpy(xinxi0[j].dormphone,xinxi.dormphone);break;
     case 5:printf("\n请输入新的家庭所在地电话区号:\n");gets(xinxi.quhao);
		    strcpy(xinxi0[j].quhao,xinxi.quhao);break;
     case 6:printf("\n请输入新的家庭电话:\n");gets(xinxi.familyphone);
		    strcpy(xinxi0[j].familyphone,xinxi.familyphone);break;
     case 7:printf("\n请输入新的手机号码:\n");gets(xinxi.mobilephone);
		    strcpy(xinxi0[j].mobilephone,xinxi.mobilephone);break;
     case 8:printf("\n请输入新的E-mail:\n");gets(xinxi.email);
		    strcpy(xinxi0[j].email,xinxi.email);break;
     case 9:printf("\n请输入新的家庭住址:\n");gets(xinxi.address);
		    strcpy(xinxi0[j].address,xinxi.address);break;
     case 10:printf("\n请输入新的家庭所在地的邮政编码:\n");gets(xinxi.youbian);
		     strcpy(xinxi0[j].youbian,xinxi.youbian);break;
   }
    printf("\n******************************恭喜你!修改成功********************************\n");
	printf("\n1:继续修改该学生的其他信息 2:退出修改\n请选择:");
    scanf("%d",&xuhao);
    getchar();
   while(xuhao>2)
   {
    printf("\n你输入有误 请重新输入:");
    scanf("%d",&xuhao);
    getchar();
   }
   if(xuhao==2) {system("cls");break;}
   }while(xuhao==1);
   fp=fopen("stu_xinxi","wb");
   for(i=0;strlen(xinxi0[i].name)!=0;i++)
    {fwrite(&xinxi0[i],sizeof(struct xinxi),1,fp);}
   fclose(fp);
   printf("\n请选择你需要服务的序号:1:继续修改 2:删除  3:返回管理界面\n");
   scanf("%d",&xuhao);
   getchar();
   while(xuhao>3)
   {
    printf("\n你输入有误 请重新输入:");
    scanf("%d",&xuhao);
    getchar();
   }
 if(xuhao==1) xiugai();
   else if(xuhao==2)  shanchu(); 
        else jiemian(); 
}

void shanchu()  //删除学生通讯信息
{
   FILE*fp;
   int i=0,j,xuhao;
   fp=fopen("stu_xinxi","rb");
   for(i=0;;i++)
     {fread(&xinxi0[i],sizeof(struct xinxi),1,fp);
      if(feof(fp)) break;
     }
   fclose(fp);
   printf("\n请输入需要删除信息的学号:");
   scanf("%s",xinxi.number);
   for(i=0;;i++) 
   {
     if(strcmp(xinxi.number,xinxi0[i].number)==0) {j=i;break;}
   }
   fp=fopen("stu_xinxi","wb");
   for(i=0;strlen(xinxi0[i].name)!=0;i++)
    {
     if(i==j) continue; 
     fwrite(&xinxi0[i],sizeof(struct xinxi),1,fp);
    }
   fclose(fp);
   printf("\n******************************恭喜你!删除成功********************************\n");
   printf("\n请选择你需要服务的序号:1:继续删除 2:修改  3:返回管理界面\n");
   scanf("%d",&xuhao);
   getchar();
   while(xuhao>3)
   {
    printf("\n你输入有误 请重新输入:");
    scanf("%d",&xuhao);
   getchar();
   }
   if(xuhao==1) {system("cls");shanchu();}
   else if(xuhao==2)  {system("cls");xiugai(); }
   else {system("cls");jiemian(); }   
}




















   

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -