资源简介
用c语言实现学生基本信息的增添删改等功能,基本信息包括姓名 学号 成绩 性别等。
代码片段和文件信息
#include
#include
#include
#include
#define N 10000
typedef struct student
{
char id[10];
char name[20];
char sex;
double score[5];//五门课成绩
double total;
double avg;
}STU;
void display(void); //显示主菜单
void load(STU stu[]int *nPtr);//把学生信息加载到内存
void save(STU stu[]int n);//将数据保存到磁盘
void sort(STU stu[]int n);//排序
void InputRecord(STU stu[]int i);//输入一条记录
void find(STU stu[]int n);//查找
void del(STU stu[]int *nPtr);//删除
void add(STU stu[]int *nPtr);//添加一条记录
void edit(STU stu[]int n);//修改一条记录
void DeleteAll(STU stu[]int *nPtr);//删除所有记录
void DeleteRecord(STU stu[]int *nPtr);//删除一条记录
int FindByNum(STU stu[]int nchar *str);//按学号查找
void output(STU stu[]int n);//输出所有信息
void PrintRecord(STU *nPtr);//输出一条记录
int main()
{
STU stu[N];
int n;
int select ;
load(stu&n);
while(1)
{
//load(stu&n);
display();
scanf(“%d“&select);
switch(select)
{
case 1:
add(stu&n);break;//添加
case 2:
edit(stun);break;//修改
case 3:
sort(stun);break;//排序
case 4:
find(stun);break;//查找
case 5:
del(stu&n);break;//删除
case 6:
output(stun);break;//输出
case 7:
return 0;//退出
}
}
}
void display(void)
{
system(“cls“);
printf(“欢迎使用本学生成绩管理系统\n“);
printf(“说明:在本系统中欲执行某功能请输出相应的数字\n“);
printf(“1 添加\n“);
printf(“2 修改\n“);
printf(“3 排序\n“);
printf(“4 查找\n“);
printf(“5 删除\n“);
printf(“6 输出\n“);
printf(“7 退出\n“);
}
void load(STU stu[]int *nPtr)
{
FILE *fp;
int i;
if((fp=fopen(“d:\\student.dat““r“))==NULL)
{
*nPtr = 0;
return;
}
for (i=0;fread(&stu[i]sizeof(STU)1fp)!=0;i++)
*nPtr=i+1;
fclose(fp);
}
void save(STU stu[]int n)
{
FILE *fp;
if((fp = fopen(“d:\\student.dat““w“))==NULL)
{
printf(“打开文件失败\n“);
exit(0);
}
fwrite(stun * sizeof(stu[0])1fp);
fclose(fp);
}
void output(STU stu[]int n)
{
int i;
/*打印表头*/
printf(“%8s%8s%4s%8s%8s%8s%8s%8s%8s%8s\n““ID““NAME““SEX“
“SCORE1““SCORE2““SCORE3““SCORE4““SCORE5““total““avg“);
/*打印所有记录*/
for(i=0;i PrintRecord(&stu[i]);
system(“pause“);
}
void PrintRecord(STU *sPtr)//输出指针sPtr所指记录的内容
{
int i;
printf(“%8s%8s%4c“sPtr->idsPtr->namesPtr->sex);
for(i=0;i<5;i++)
{
printf(“%8.2f“sPtr->score[i]);
}
printf(“%8.2f%8.2f“sPtr->totalsPtr->avg);
printf(“\n“);
}
void add(STU stu[]int *sPtr)
{
//int i=0;//没用
char sel = ‘y‘;
while(sel==‘y‘)
{
InputRecord(stu(*sPtr)++);
printf(“是否继续添加(yes--yno--others)\n“);
scanf(“ %c“&sel);
}
save(stu*sPtr);
}
void InputRec
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-01-03 22:21 学生管理系统\
目录 0 2018-01-03 22:02 学生管理系统\管理系统\
目录 0 2017-09-14 13:10 学生管理系统\管理系统\bin\
目录 0 2017-09-14 13:10 学生管理系统\管理系统\bin\Debug\
文件 39555 2017-03-22 20:46 学生管理系统\管理系统\bin\Debug\管理系统.exe
文件 6844 2017-03-22 20:46 学生管理系统\管理系统\main.c
目录 0 2017-09-14 13:10 学生管理系统\管理系统\obj\
目录 0 2017-09-14 13:10 学生管理系统\管理系统\obj\Debug\
文件 12816 2017-03-22 20:46 学生管理系统\管理系统\obj\Debug\main.o
文件 1125 2017-03-19 15:09 学生管理系统\管理系统\管理系统.cbp
文件 407 2018-01-03 22:00 学生管理系统\管理系统\管理系统.depend
文件 358 2018-01-03 22:02 学生管理系统\管理系统\管理系统.layout
相关资源
- 个人账户管理系统修改版C语言版
- 二叉树c++源代码实现查找,删除,插
- 线性表创建,插入,删除及合并源代
- 实验二 递归子程序方法
- 多边形、矩形、线段、圆等绘制并修
- 编写算法删除单链表L中所有值为e的数
- vs使用mfc实现全屏截屏和自定义区域截
- 新安江模型修改
- C++仿最新版360安全卫士主界面基于稍
- C语言实现二叉树的创建、插入、删除
- 画图程序最新版 MFC/VC/VC++ 很多功能哦
- 文件系统fileSystem
- 利用MFC ODBC操作Access数据库实现显示、
- vc++6.0DES加密算法+数据加密+文件加密
- VC6 编写的类似CPU使用曲线的类,自动
- MFC对EXCEL的操作:修改单元格格式,背
- 删除文件恢复C++实现
- Windows下C语言实现文件、文件夹的复制
- IP地址修改器源码
- mfc 修改密码对话框
- 滴水逆向 文件操作pe修改C语言源代码
- C++实现内存修改器+1G视频教程百度云
- 简易通讯录的实现,可以显示,修改
- VS2010中MFC工程名的修改
- 通讯录c++实现 功能:添加、删除、查
- 动态添加、删除树形控件的节点,获
- L1范数最小化算法matlab代码(修改过可
- 修改VB6的编译器C2.exe使它可以输出汇
- C++删除指定文件夹下N天及之前日志文
- C++课程设计影碟出租管理
评论
共有 条评论