/***********************************************************
我的信息: *
姓名: 汪建林 生日:1985年2月26日 *
毕业学校: 2007年于成都理工大学 *
家乡地址: 四川渠县望溪乡包山村5组 *
联系QQ1: 287307421 QQ2: 254540457 QQ3:344245001 *
联系Email: wangjianlin1985@126.com 13908064703 *
淘宝新店地址: http://taochengxu.taobao.com *
双鱼林程序拍拍专卖店: http://287307421.paipai.com *
网站: http://www.shuangyulin.com 【长期有效】 *
***********************************************************/
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <conio.h>
#include <ctype.h>
#define N 100
struct student /*学生基本情况*/
{
int num; /*学号*/
int position; /*职位1为班长2为副班长3为团支书等*/
char name[8]; /*姓名*/
char sex[2]; /*性别f为女m为男*/
int age; /*年龄*/
int cult; /*文化程度1为大一2为大二3为大三4为大四5为其他*/
int result; /*成绩*/
}em[N];
struct communication /*学生通讯录*/
{
char name[8];
char hometel[13];
char handtel[13];
char address[13];
}empc[N];
struct empresult /*学生成绩与姓名的文件*/
{
char name[8];
int result;
}emps[N];
void manage();
void query();
void communicate();
void input();
void display();
void change();
void del();
void add();
int changeposition();
int changecult();
int changeresult();
void queryresult();
void creat();
void inputcommunicate();
void querycommunicate();
void changecommunicate();
void changetel1();
void changetel2();
void changetel3();
char password[7]="111111";
////////////////////////////////////////////////////////////////////////////////
/* 学生信息管理系统的主函数--系统函数*/
////////////////////////////////////////////////////////////////////////////////
main()
{
int choice;
char s[7];
int flag=0;
int m=1;
do
{
printf("请你输入密码:\n");
scanf("%s",s);
if(!strcmp(s,password)) /*若密码正确*/
{
printf("恭喜你成功登陆了\n\n\n");
flag=1;
break;
}
else
{
printf("输入有错误请重新输入:\n");
m++;
}
}while(m<4);
if(!flag)
{
printf("你的输入次数已到再见\n");
}
do
{
printf("~~~~~~~~~~~~~~\t\t\t~~~~~~~~~~~~~~~~\n");
printf("\t\t欢迎进入班级学生管理系统中文版\n");
printf("制作人:宋苗苗 朱碧云 石丹丹\t班级:09通信\t学号:09030423 09030436 09030422\n");
printf("联系地址:常州工学院计算机信息工程学院\n");
printf("%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n");
printf("\t\t请你选择操作类型:\n");
printf("**************\t\t**************\n");
printf("\t\t1进入管理系统\n");
printf("\t\t2进入查询系统\n");
printf("\t\t3进入通讯录\n");
printf("\t\t0退出系统\n");
printf("**************\t\t**************\n");
printf("说明:版权归作者所有违者必究\n\n\n\n");
scanf("%d",&choice);
switch(choice)
{
case 1:
manage();
break;
case 2:
query();
break;
case 3:
communicate();
break;
case 0:
{
printf("谢谢使用再见\n");
exit(0);
}
default:
{
printf("输入有错误请重新输入:\n");
}
}
}while(1);
getch();
}
////////////////////////////////////////////////////////////////////////////////
/*管理系统*/
////////////////////////////////////////////////////////////////////////////////
void manage()
{
int choicemanage;
char choice='y';
while(choice=='y'||choice=='Y')
{
printf("\t\t欢迎进入管理系统\n");
printf("===================\n");
printf("\t\t请你选择操作类型:\n");
printf("\t\t1输入学生信息\n");
printf("\t\t2显示学生信息\n");
printf("\t\t3修改学生信息\n");
printf("\t\t4追加一个学生信息\n");
printf("\t\t5删除一个学生信息\n");
printf("\t\t0返回\n");
printf("=====================\n");
scanf("%d",&choicemanage);
switch(choicemanage)
{
case 1:
input(); /*输入学生信息*/
break;
case 2:
display(); /*显示学生信息*/
break;
case 3:
change(); /*修改学生信息*/
break;
case 4:
add(); /*追加一个学生信息*/
break;
case 5:
del(); /*删除一个学生信息*/
break;
case 0:
printf("谢谢你的使用再见\n");
return;
default:
printf("你的输入有错请重新输入\n");
}
printf("是否继续管理?(y/n)");
scanf("%s",&choice);
}
if(toupper(choice)=='N'||(choice)=='n')
{
printf("输入完毕,任意键返回\n");
getch();
return;
}
}
////////////////////////////////////////////////////////////////////////////////
/*输入学生信息*/
////////////////////////////////////////////////////////////////////////////////
void input()
{
FILE *fp;
int i=0;
char choiceinput='y';
if((fp=fopen("d:\\student.txt","w"))==NULL)
return;
while(choiceinput=='y'||choiceinput=='Y')
{
i++;
printf("第%d个学生\n",i);
printf("\n");
printf("请你输入学号:\n");/*输入学号*/
scanf("%d",&em[i].num);
printf("\n");
printf("请你输入职位:\n");/*输入职位*/
printf("1为班长2为副班长3为团支书\n");
printf("4为学习委员5为生活委员6为组织委员\n");
printf("7为文艺委员8为体育委员9为其他\n");
scanf("%d",&em[i].position);
printf("\n");
printf("请你输入姓名:\n");/*输入姓名*/
scanf("%s",em[i].name);
printf("\n");
printf("请你输入性别以m为男f为女:\n");/*输入性别*/
scanf("%s",em[i].sex);
printf("\n");
printf("请你输入文化程度:\n");/*输入文化程度*/
printf("1为大一2为大二3为大三4为大四5为其他\n");
scanf("%d",&em[i].cult);
printf("\n");
printf("请你输入成绩:\n");/*输入成绩*/
scanf("%d",&em[i].result);
printf("\n");
printf("是否继续输入?(y/n)\n");
scanf("%s",&choiceinput);
fwrite(&em[i],sizeof(struct student),1,fp);
}
if(toupper(choiceinput)=='N')
{
fclose(fp);
printf("输入完毕,任意键返回\n");
getch();
return;
}
}
////////////////////////////////////////////////////////////////////////////////
/*显示学生信息*/
////////////////////////////////////////////////////////////////////////////////
void display()
{
FILE *fp;
int i;
if((fp=fopen("d:\\student.txt","r"))==NULL)
return;
printf("输出结果:\n");
printf("学号 职位 姓名 性别 文化程度 成绩 身体情况\n");
for(i=0;fread(&em[i],sizeof(struct student),1,fp)!=0;i++)
{
printf("学号%d\n",em[i].num);
printf("职位为%d\n",em[i].position);
printf("1为班长2为副班长3为团支书\n");
printf("4为学习委员5为生活委员6为组织委员\n");
printf("7为文艺委员8为体育委员9为其他\n");
printf("姓名为%s\n",em[i].name);
printf("性别为%s\n",em[i].sex);
printf("其中m为男f为女\n");
printf("文化程度为%d\n",em[i].cult);
printf("1为大一2为大二3为大三4为大四5为其他\n");
printf("成绩为%d\n",em[i].result);
}
printf("完毕按任意键返回\n");
getch();
fclose(fp);
return;
}
////////////////////////////////////////////////////////////////////////////////
/*修改学生信息*/
////////////////////////////////////////////////////////////////////////////////
void change()
{
FILE *fp;
int i;
char chname[8];
int choicechange;
printf("请你输入要修改的人的姓名:\n");
scanf("%s",&chname);
if((fp=fopen("d:\\s