资源简介
这是你可以在网上找到的用C写的最强大的学生成绩管理系统,功能部分代码有3000行,附上设计报告,详细阐述了用到的各种编程技术和思想

代码片段和文件信息
#include “mydb.h“
/*本函数承担着数据库的所有搜索任务
包括由组名搜索组的ID,由学生的姓名和学号搜索学生,
并返回该生在文件中的偏移地址*/
plink search(char *pdataint searchtype)
{
if(!myfileinfo)
{
myfileinfo=NEW(fileinfo);
fcntl(0READmyfileinfoFILEINFOSIZE);
}
plink linkhead=NULLlinktemp=NULL;
if(searchtype==SEARCH_SUB)
{
psubinfo subtemp=myfileinfo->sub;int i;
for(i=0;i if(subtemp->flag&&!strcmp(subtemp->sub_namepdata))
{
linkhead=NEW(link);memset(linkhead0linkSIZE);
linkhead->data=subtemp->sub_id;
linkhead->next=NULL;
}
return linkhead;
}
if(strlen(pdata)>=19)pdata[19]=0;
if(!mystuinfo)mystuinfo=NEW(stuinfo);
long seek=DATASEEK;
int count=myfileinfo->stucounti;
for(i=0;i {
memset(mystuinfo0STUINFOSIZE);
fcntl(seekREADmystuinfoSTUINFOSIZE);
if(!mystuinfo->flag){i--;continue;}
pmystu stutemp=&mystuinfo->stu_privacy;
switch(searchtype)
{
case SEARCH_SCHID:
{
if(!strcmp(stutemp->stu_schidpdata))
{
linkhead=NEW(link);
linkhead->data=mystuinfo->stu_seek;
linkhead->next=NULL;
return linkhead;
}
break;
}
case SEARCH_NAME:
{
if(!strcmp(stutemp->stu_namepdata))
{
linktemp=NEW(link);
linktemp->data=mystuinfo->stu_seek;
linktemp->next=linkhead;
linkhead=linktemp;
}
break;
}
default:return NULL;
}
}
return linkhead;
}
/*
本函数将二进制的数据库文件以文本模式重写
使得二进制数据库文件中的内容透明化,同时
便于及时发现数据库中的变量异常
*/
void showfile()
{
FILE *ftest=fopen(INFOPATH“w+“);
if(!ftest)seterr(“showfile:ftest null“);
if(!myfileinfo)
{
myfileinfo=NEW(fileinfo);
fcntl(0READmyfileinfoFILEINFOSIZE);
}
fprintf(ftest“fileinfo\t\t:\n“);
fprintf(ftest“stucount\t\t:%d\n“myfileinfo->stucount);
fprintf(ftest“countmax\t\t:%d\n“myfileinfo->countmax);
fprintf(ftest“subcount\t\t:%d\n“myfileinfo->subcount);
fprintf(ftest“spacecount\t\t:%d\n“myfileinfo->spacecount);
int i=0j=0;
fprintf(ftest“\nseek:\n“);
for(i=0;i {
fprintf(ftest“%ld\t“myfileinfo->seek[i]);j++;
if(j>=10){fprintf(ftest“\n“);j=0;}
}
fprintf(ftest“\n\nsubinfo:\n“);
psubinfo subtemp=myfileinfo->sub;
fprintf(ftest“\tflag\t\tsub_id\t\tsub_term\t\tsub_rate\t\tsub_name\n“);
for(i=0;i {
fprintf(ftest“\t%d\t\t“subtemp->flag);
fprintf(ftest“%d\t\t“subtemp->sub_id);
fprintf(ftest“%d\t\t\t“subtemp->sub_term);
fprintf(ftest“%3.1f\t\t\t“subtemp->sub_rate);
fprintf(ftest“%s\n“subtemp->sub_name);
}
fprintf(ftest“\nstudent info :\n\n“);
fseek(fp0LSEEK_END);
long size=ftell(fp)seek=DATASEEK;
int allcount=(size-FILEINFOSIZE)/DATATRANS;
if(!mystuinfo)mystuinfo=NEW(stuinfo);
psubmark marktemp=NULL;
pmystu stutemp=NULL;
for(i=0;i {
memset(mystuinfo0STUINFOSIZE);
fcntl(seekREADmystuinfoSTUINFOSIZE);
stutemp
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 16697 2012-06-07 23:10 学生成绩管理系统\Debug\extrafunc.o
文件 19789 2012-06-07 23:10 学生成绩管理系统\Debug\filefunc.o
文件 15460 2008-05-28 22:55 学生成绩管理系统\Debug\func.o
文件 9789 2008-05-28 22:55 学生成绩管理系统\Debug\gui_ctrl.o
文件 6707 2012-06-07 23:10 学生成绩管理系统\Debug\main.o
文件 75585 2012-06-07 23:10 学生成绩管理系统\Debug\mydb.exe
文件 14517 2012-06-07 23:10 学生成绩管理系统\Debug\RandRecord.o
文件 36925 2012-06-07 23:10 学生成绩管理系统\Debug\system_gui.o
文件 7089 2008-07-02 12:33 学生成绩管理系统\extrafunc.c
文件 8768 2008-08-25 13:51 学生成绩管理系统\filefunc.c
文件 1995 2008-07-21 14:36 学生成绩管理系统\func.h
文件 2174 2008-08-25 13:43 学生成绩管理系统\macro.h
文件 72 2008-08-09 13:14 学生成绩管理系统\main.c
文件 0 2008-05-05 23:00 学生成绩管理系统\mydb
文件 416 2008-08-25 13:52 学生成绩管理系统\mydb.h
文件 1691 2012-06-07 23:44 学生成绩管理系统\mydb.msp
文件 424 2008-08-16 19:12 学生成绩管理系统\mydb.txt
文件 4282 2008-08-16 18:43 学生成绩管理系统\RandRecord.c
文件 1598 2008-07-18 19:59 学生成绩管理系统\struct.h
文件 17666 2008-08-25 13:43 学生成绩管理系统\system_gui.c
文件 108032 2008-08-16 19:15 学生成绩管理系统\我的课程设计报告.doc
目录 0 2012-06-07 23:10 学生成绩管理系统\Debug
目录 0 2012-06-07 23:44 学生成绩管理系统
----------- --------- ---------- ----- ----
349676 23
- 上一篇:libstdc++-3.4.6
- 下一篇:C语言实现的文件存储引擎
相关资源
- 操作系统c语言模拟文件管理系统844
- C语言开发实战宝典
- C++中头文件与源文件的作用详解
- C语言代码高亮html输出工具
- 猜数字游戏 c语言代码
- C语言课程设计
- 数字电位器C语言程序
- CCS FFT c语言算法
- 使用C语言编写的病房管理系统
- 通信过程中的RS编译码程序(c语言)
- 利用C++哈希表的方法实现电话号码查
- 计算机二级C语言上机填空,改错,编
- 用回溯法解决八皇后问题C语言实现
- 简易教务管理系统c语言开发文档
- 操作系统课设 读写者问题 c语言实现
- 小波变换算法 c语言版
- C流程图生成器,用C语言代码 生成C语
- 3des加密算法C语言实现
- 简单的C语言点对点聊天程序
- 单片机c语言源程序(51定时器 八个按
- 个人日常财务管理系统(C语言)
- MFC数字钟(基于VC6.0)
- c语言电子商务系统
- 小甲鱼C语言课件 源代码
- 将图片转换为C语言数组的程序
- C语言实现的一个内存泄漏检测程序
- DES加密算法C语言实现
- LINUX下命令行界面的C语言细胞游戏
- 用单片机控制蜂鸣器播放旋律程序(
- 学校超市选址问题(数据结构C语言版
评论
共有 条评论