C语言实训任务书_c语言实训任务书
C语言实训任务书由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“c语言实训任务书”。
学生档案管理系统录入学生信息修改学生信息删修除改学生信息查询学生信息输出学生信息退出系统 按学号查询按班级查询
2、重要数据的数据结构设计
学生学籍的记录项用结构体StuMeage 表示,包括6个属性,stuNo、name、spec、grade、sex、birthday 分别代表学生的学号、姓名、专业、年级、性别和出生日期,其中 birthday 类型为自定义的结构体类型 Date。
struct StuMeage {
char stuNo[11];
//学号
char name[9];
//姓名
char spec[21];
//专业
struct Grade score;
//年级
char sex;
//性别
struct Date birthday;//出生日期 };日期类型 Date 包括三个属性,分别代表年、月、日。struct Date {
int year;
//年
清屏录入一条记录length++继续录入(Y/N)接收用户选择Ycon == ‘Y’或con == ‘y’N返回
4、修改学生信息功能模块函数 Modify()设计
5、删除学生信息功能模块函数 Delete()设计
清屏显示查询菜单接收用户的选择choose1按学号查询2按年级查询0返回主菜单其他非法操作Ychoose!= 0N7、按学号查询功能模块函数 SearNum()设计
清屏接收查询年级输出表头i = 0, count =0i 0N共找到 n 条记录没有找到相关记录按任意键继续getch()返回
9、输出学生信息功能模块函数 ListAll()设计
112
switch(ch)
{
case '1':Append(stu);break;
case '2':Modify(stu);break;
case '3':Delet(stu);break;
/*case '4':MenuOfSear(stu);break;
case '5':ListAll(stu);break;
case '0':Quit();break;*/
} } } void Append(Stu *stu){
FILE *fp;
int i;
fp=fopen(“stuinfo.txt”,“r”);
if(fp==NULL)
printf(“File open failedn”);
for(i=0;i
{
fscanf(fp,“%st%st%st%dt%dt%dt%dt%dt%ct%dt%dt%d”,stu[i].stuNo,stu[i].name,stu[i].spec,&stu[i].score.CompFoundation,&stu[i].score.English,&stu[i].score.language,&stu[i].score.math,&stu[i].score.sport,&stu[i].sex,&stu[i].birthday.year,&stu[i].birthday.month,&stu[i].birthday.day);
}
fclose(fp);
} void Modify(Stu *stu){ char no[11];int i=0;int flag=1;printf(“请输入修改学生信息的学号:”);scanf(“%s”,no);while(flag){
if(strcmp(no,stu[i].stuNo)==0)
flag=0;
else i++;} printf(“学号:%s、姓名:%s、专业:%s、基础:%d,英语:%d,C语言:%d,数学:%d,体育:%d、性别:%c %d年,%d月,%d日n”,stu[i].stuNo,stu[i].name,stu[i].spec,stu[i].score.CompFoundation,stu[i].score.English,stu[i].score.language,stu[i].score.math,stu[i].score.sport,stu[i].sex,stu[i].birthday.year,stu[i].birthday.month,stu[i].birthday.day);printf(“请输入要修改的学生信息:学号、姓名、专业、基础,英语,C语言,数学,体育、性别 年,月,日:n”);
scanf(“%s%s%s%d%d%d%d%d %c%d%d%d”,stu[i].stuNo,stu[i].name,stu[i].spec,&stu[i].score.CompFoundation,&stu[i].score.English,&stu[i].score.language,&stu[i].score.math,&stu[i].score.sport,&stu[i].sex,&stu[i].birthday.year,&stu[i].birthday.month,&stu[i].birthday.day);
getchar();
getchar();}
void Delet(Stu *stu)
{
char sNO[11];
system(“CLS”);
printf(“请输入要删除学生的学号n”);
scanf(“%s”,sNO);
}
int NumOfSear(Stu *stu, char stuNum[])
{
int i;
for(i=1;i
if(strcmp(stuNum,stu[i].stuNo)==0)
return i;
return-1;
} void PrintHead(void){ printf(“学号
姓名
基础
数学
英语
C语言
体育
性别
****年**月**日n”);} void ListOne(Stu stu){printf(“%s %s %s %d %d %d %d %d %c %d %d %dn”,stu.stuNo,stu.name,stu.spec,stu.score.CompFoundation,stu.score.English,stu.score.language,stu.score.math,stu.score.sport,stu.sex,stu.birthday.year,stu.birthday.month,stu.birthday.day);}