|

- 发帖数
- 7
- 在线时间
- 2 小时
|
楼主
发表于 2010-3-8 23:20
| 只看该作者
学生信息管理系统程序,高手帮忙!!
内容:学生信息管理系统程序
一班有20名学生,每个学生的信息包括:姓名、学号、身份证号,生日、地址等信息,编写程序实现如下功能:
(1) 录入每名学生的基本信息,并保存到文件中。
(2) 可以通过姓名查询学生信息。
(3) 可以修改学生信息。
(4) 可以删除学生信息。
(5) 可以列出所有学生信息。
(6) 可以保存所有学生信息。
(7) 可以将磁盘上学生信息进行加载。
2. 要求:
(1) 编制一主函数来实现功能菜单的显示和各功能函数的调用;
(2) 实训各步骤的相关文档齐全、清晰。
(3) 在所有数据输入处理之前提供必要的提示。
(4) 实训完成方式:以实训报告的形式提交实训内容(书面:A4文稿)。
实训报告包含整个开发过程的全部相关文档:实训任务、功能介绍(包括系统功能模块图、系统功能模块描述)、主要技术、实现方法、参考书、实训心得等。
三、课程设计方法及步骤
1. 系统结构设计:设计系统的各个功能模块,定义函数名,每个函数仅实现一个功能。
(1) 主函数:显示功能菜单,调用功能模块
(2)、录入每名学生的基本信息函数:int insert(); /* 该函数添加新的学生信息 */ (3)、通过姓名查询学生信息函数:int query();
(4)、修改学生信息函数:int update();
(5)、删除学生信息函数:int delete();
(6)、列出所有学生信息函数:int list();
(7)、保存所有学生信息函数:int save();
(8)、将磁盘上学生信息进行加载函数:int load();
2. 数据结构设计:设计程序中用到的结构体、结构体数组、变量、指针变量的名称和类型。
3. 程序调试:
(1) 调试各模块
(2) 整个程序联调
4. 输入数据测试系统
要求写出测试的数据(测试用例)以及程序运行的结果。
下面是我写的代码,高手帮我改下..谢啦
#include <stdio.h>
#include <string.h>
#define N 100
int insert();
int query();
int update();
int delete();
int list();
int save();
int load();
struct STUDENT
{char name[10];
int xuehao;
int shengfenzheng;
int shengri;
char dizhi[50];
};
void menu(void)
{
printf("1. 学生信息输入\n");
printf("2. 学生信息查询\n");
printf("3. 学生信息修改\n");
printf("4. 学生信息删除\n");
printf("5.列出所有学生信息\n");
printf("6.保存学生信息\n");
printf("7.加载学生信息\n");
printf("请输入你想执行的步骤:");
getchar();
}
main()
{ int a,choose,i;
printf("请输入学生人数");
scanf("%d",&a);
struct STUDENT stu[N];
m4: menu();
getchar();
switch(choose)
{case '1':insert();break;
case '2':query();break;
case '3':update;break;
case '4':delete;break;
case '5':list;break;
case '6':save;break;
case '7':load
int insert()
{ for(i=0;i<a;i++)
{printf("请输入第%d个学生的信息:\n",i+1);
printf("请输入学生姓名:");
scanf("%s", stu[i].name);
printf("请输入学生学号:");
scanf("%d", &stu[i].xuehao);
printf("请输入学生身份证:");
scanf("%d", &stu[i].shengfenzheng);
printf("请输入学生生日:");
scanf("%d-%d-%d", &stu[i].shengri);
printf("请输入学生地址:");
scanf("%s", stu[i].dizhi);
goto m4;
getchar();
break;}
int query()
{ int b;
printf("请输入你想查询的学生学号:");
scanf("%d",&b);
for(i=0;i<a;i++)
if(b==stu[i]xuehao)
{printf("学生姓名:\n",stu[i].name);
printf("学生学号:\n",stu[i].xuehao);
printf("学生身份证:\n",stu[i].shengfenzheng);
printf("学生生日:\n",stu[i].shengri);
printf("学生地址:\n",stu[i].dizhi);
}
goto m4;
break;}
int update()
{
int c;
char p;
printf("请输入你想修改的学生学号:");
scanf("%d",&c);
for(i=0;i<a;i++)
if(c==stu[i]xuehao)
printf("please choice the error:");
printf("1. 姓名\n");
printf("2. 学号\n");
printf("3. 身份证\n");
printf("4. 生日\n");
printf("5. 地址\n");
printf("Please enter your choice:");
p=getchar();
switch(p)
{
case '1':
printf("please enter the new one:");
scanf("%d",stu[c].name);
break;
case '2':
printf("please enter the new one:");
scanf("%d", &stu[c].xuehao);
break;
case '3':
printf("please enter the new one:");
scanf("%d", &stu[c].shengfenzheng);
break;
case '4':
printf("please enter the new one:");
scanf("%d", &stu[c].shengri);
break;
case '5':
printf("please enter the new one:");
scanf("%d", &stu[c].dizhi);
break;
default:
printf("Input error!");
}
goto m4;
break;}
int delete()
{
int d;
printf("请输入你想删除的学生学号:");
scanf("%d",&d);
for(i=0;i<a;i++)
{
if(d==stu[i].xuehao)
{
for(i=0;i<a-1;i++)
{
stu[i]=stu[i+1];
}
goto m1;
}
}
m1: for(i=0;i<a-1;i++)
{
printf("NO. : %d Name : %s xuehao : %d shengfenzheng: %d shengri : %d dizh : %d ",i+1, stu[i].name, stu[i].xuehao, stu[i].shengfenzheng, stu[i].shengri, stu[i].dizhi);
goto m4;
break;}
int list();
{
for(i=0;i<a;i++)
{ printf("学生姓名:\n",stu[i].name);
printf("学生学号:\n",stu[i].xuehao);
printf("学生身份证:\n",stu[i].shengfenzheng);
printf("学生生日:\n",stu[i].shengri);
printf("学生地址:\n",stu[i].dizhi);
}}
int save()
{
FILE *fp=NULL;
fp=fopen("d:\\f8_1.txt","w");
if(fp==NULL)
{printf("open error!!");
getch();
}
else
for(i=0;i<a;i++)
{ { scanf("%s", stu[i].name);
scanf("%d", &stu[i].xuehao);
scanf("%d", &stu[i].shengfenzheng);
scanf("%d", &stu[i].shengri);
scanf("%s", stu[i].dizhi);
}
fprintf(fp,"%s %d %d %d %s ",stu[i].name,stu[i].xuehao,stu[i].shengfenzheng,stu[i].shengri,stu[i].dizhi);
}
fclose(fp);
goto m4;
break;}
int load()
{
FILE *fp=NULL;
fp=fopen("d:\\f8_1.txt","r");
if(fp==NULL)
{printf("open error!!");
getch();
}
for(i=0;i<a;i++)
fscanf(fp,"%s %d %d %d %s ",stu[i].name,stu[i].xuehao,stu[i].shengfenzheng,stu[i].shengri,stu[i].dizhi);
fclose(fp);
}} |
|