C语言程序与设计—课设头文件_第1页
C语言程序与设计—课设头文件_第2页
C语言程序与设计—课设头文件_第3页
C语言程序与设计—课设头文件_第4页
C语言程序与设计—课设头文件_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、#include <stdio.h>#include <stdlib.h>#include <windows.h>#include <wincon.h>#include <conio.h>#include <string.h>#include <io.h>#include <fcntl.h>#include <sysstat.h>#include <ctype.h>#include <time.h>#ifndef TYPE_H_INCLUDED#define TY

2、PE_H_INCLUDED#define SCR_ROW 25 /*屏幕行数*/#define SCR_COL 80 /*屏幕列数*/*基本信息链结构*/* *项目信息链结点结构 */typedef struct project_node char project_code15; /*< 项目编号*/ char category_code; /*< 项目类别 '0'-表示 973计划项目'1'-表示 国家自然科学基金项目'2'-表示 863计划项目'3'-表示 其他纵向项目'4'-表示 其他横向项目 *

3、/ char date8; /*< 起始时间 -如:"2012/03" */ float funds; /*< 项目经费 -如: 6000 */ char project_principle15; /*< 项目负责人-如:“SuSan” */ char team_id15; /*< 所属团队 -如:“IDCL” */ char college_id20; /*< 所属院系 -如:“IDCL” */ struct project_node *next; /*< 指向下一个项目节点的指针 */ PROJECT_NODE;/* *团队基本信息链

4、结点结构 */typedef struct team_node char team_id30; /*< 团队名称 -如:“IDCL ” */ char team_principle15; /*< 团队负责人 -如:“LiRuanXuan ” */ int teacher_num; /*< 教师人数 -如:“13” */ int graduate_student_num; /*< 研究生人数 -如:“65” */ char college_id20; /*< 所属院系-如:“JiSuanJiXuetYuan”*/ struct project_node *pnext

5、; /*< 指向项目信息支链的指针 */ struct team_node *next;/*< 指向下一团队结点的指针 */ TEAM_NODE;/* *学院信息链结点结构 */typedef struct college_node char college_id20; /*< 学院名称-如:“JiSuanJiXuetYuan” */ char college_principle10; /*< 学院负责人 -如:“LiRuanXuan ” */ char tel15; /*< 联系电话-如:"quot; */ struct tea

6、m_node *tnext; /*< 指向科研团队基本信息支链的指针 */ struct college_node *next; /*< 指向下一院系结点的指针 */ COLLEGE_NODE;/*统计信息链结构*/* *1 按院系统计 统计信息链结点结构 */typedef struct college_statistics_node char college_id20; /*< 学院名称 -如:“JiSuanJiXuetYuan” */ unsigned short team_num; /*< 该院科研团队数目 -如:“20” */ unsigned short t

7、eacher_num; /*< 该院教师数目 -如:“15” */ unsigned short graduate_student_num; /*< 研究生人数 -如:“65” */ struct college_statistics_node *next; /*< 指向下一学院结点的指针*/ COLLEGE_STATISTICS_NODE;/* *2 按某年度统计各团队 统计信息链结点结构 */typedef struct years_statistics_node char team_id30; /*< 科研团队名称 -如:“2013”*/ unsigned sho

8、rt project_num; /*< 该科研团队项目数目 -如:“20” */ float team_funds; /*< 项目经费总额 -如: 6000 */ int teacher_num ;/*< 教师数目 -如:“15” */ char college_id20; /*< 所属院系-如:“JiSuanJiXuetYuan”*/ struct years_statistics_node *next; /*< 指向下一团队统计信息结点的指*/ YEARS_STATISTICS_NODE;/* *3 统计某年度全校每类科研项目 统计信息链结点结构 */type

9、def struct category_statistics_node char project_code; /*< 项目类别代码 */ unsigned short project_num; /*< 项目类别代码 */ float categoriey_funds; /*< 类别经费总数 -如:6000 */ char name50;/*< 项目名字 -如:973计划项目*/ struct category_statistics_node *next; CATEGORY_STATISTICS_NODE;/* *4 按历年教师人均经费排序(输出前5各院系) 统计信息链结

10、点结构 */typedef struct average_teacher_funds_node char college_id20; /*< 学院名称 -如:“JiSuanJiXuetYuan”*/ char principle15; /*< 学院负责人 -如:“LiRuanXuan ” */ unsigned short teacher_num; /*< 院系教师人数*/ unsigned shortproject_num; /*< 项目总数*/ floatfunds; /*< 项目总经费*/ float average_teacher_funds; /*<

11、; 人均教师经费数*/ struct average_teacher_funds_node *next; /*< 指向下一学院年人均教师经费结点的指针*/ AVERAGE_TEACHER_FUNDS_NODE;/* *5 按历年科研师生规模,输出 院系名称,院系负责人,教师人数,研究生人数,科研经费总数,科研总人数 统计信息链结点结构 */ typedef struct college_count_node char college_id20; /*< 学院名称 -如:“JiSuanJiXuetYuan”*/ char principle15; /*< 学院负责人 -如:“L

12、iRuanXuan ” */ unsigned short teacher_num; /*< 院系教师人数*/ unsigned shortgraduate_student_num; /*< 研究生总数*/ floatfunds; /*< 科研经费总数*/unsigned shortAll;/*< 总人数*/ struct college_count_node *next; /*< 指向下一学院年人均教师经费结点的指针*/ COLLEGE_COUNT_NODE;/*界面信息链结构*/* *屏幕窗口信息链结点结点结构 */typedef struct layer_n

13、ode char LayerNo; /*< 弹出窗口层数*/ SMALL_RECT rcArea; /*< 弹出窗口区域坐标*/ CHAR_INFO *pContent; /*< 弹出窗口区域字符单元原信息存储缓冲区*/ char *pScrAtt; /*< 弹出窗口区域字符单元原属性值存储缓冲区*/ struct layer_node *next; /*< 指向下一结点的指针*/ LAYER_NODE;/* *标签束结构 */typedef struct label_bundle char *ppLabel; /*< 标签字符串数组首地址*/ COORD

14、*pLoc; /*< 标签定位数组首地址*/ int num; /*< 标签个数*/ LABEL_BUNDLE;/* *热区结构 */typedef struct hot_area SMALL_RECT *pArea; /*< 热区定位数组首地址*/ char *pSort; /*< 热区类别(0按键、1文本框、2选项框)数组首地址*/ char *pTag; /*< 热区序号数组首地址*/ int num; /*< 热区个数*/ HOT_AREA;/*/LAYER_NODE *gp_top_layer = NULL; /*弹出窗口信息链链头*/COLLEG

15、E_NODE *gp_head = NULL; /*主链头指针*/char *gp_sys_name = "科研项目信息管理系统" /*系统名称*/char *gp_pro_info_filename = "Project.dat" /*科研项目基本信息数据文件*/char *gp_team_info_filename = "Team.dat" /*科研团队基本信息数据文件*/char *gp_college_info_filename = "College.dat" /*学院基本信息数据文件*/*/char *g

16、a_main_menu = "文件(F)", /*系统主菜单名*/ "数据维护(M)", "数据查询(Q)", "数据统计(S)", "帮助(H)" ;char *ga_sub_menu = "S 数据保存", /*系统子菜单名*/ "B 数据备份", "R 数据恢复", "X 退出 Alt+X", "C 院系基本信息",/ "T 科研团队信息",/ "P 科研项目信

17、息", "C 院系基本信息",/ "T 科研团队信息", / "P 科研项目信息", "I 院系教师总人数统计", "T 某年度团队经费统计", "C 某年度各类项目统计", "U 各院系人均经费统计", "A 各院系科研人数统计", "T Topic", "",/ 空行表示 分割线 "A About." ;int ga_sub_menu_count = 4, 3,

18、3, 5, 3; /*各主菜单项下子菜单的个数*/int gi_sel_menu = 1; /*被选中的主菜单项号,初始为1*/int gi_sel_sub_menu = 0; /*被选中的子菜单项号,初始为0,表示未选中*/char input1081; /* 存储输入数据的二维数组 */*/CHAR_INFO *gp_buff_menubar_info = NULL; /*存放菜单条屏幕区字符信息的缓冲区*/CHAR_INFO *gp_buff_stateBar_info = NULL; /*存放状态条屏幕区字符信息的缓冲区*/DWORD buffer; /* 控制台函数返回的输入参数 *

19、/char *gp_scr_att = NULL; /*存放屏幕上字符单元属性值的缓冲区*/char gc_sys_state = '0' /*用来保存系统状态的字符*/unsigned long gul_pro_code_len = 0; /*科研项目类别代码表长度*/int hi_nu = 0; /* 满足条件数目 */HANDLE gh_std_out; /*标准输出设备句柄*/HANDLE gh_std_in; /*标准输入设备句柄*/*/int CreatList(COLLEGE_NODE *pphead); /*数据链表初始化*/void InitInterface

20、(void); /*系统界面初始化*/void ClearScreen(void); /*清屏*/void ShowMenu(void); /*显示菜单栏*/void PopMenu(int num); /*显示下拉菜单*/void PopUp(SMALL_RECT *, WORD, LABEL_BUNDLE *, HOT_AREA *); /*弹出窗口屏幕信息维护*/void PopOff(void); /*关闭顶层弹出窗口*/void DrawBox(SMALL_RECT *parea); /*绘制边框*/void LocSubMenu(int num, SMALL_RECT *parea

21、); /*主菜单下拉菜单定位*/void TagMainMenu(int num); /*标记被选中的主菜单项*/void TagSubMenu(int num); /*标记被选中的子菜单项*/int DealInput(HOT_AREA *pHotArea, int *piHot); /*控制台输入处理*/void SetHotPoint(HOT_AREA *phot_area, int hot_num); /*设置热区*/void RunSys(COLLEGE_NODE *pphd); /*系统功能模块的选择和运行*/BOOL ExeFunction(int main_menu_num,

22、int sub_menu_num); /*功能模块的调用*/void CloseSys(); /*退出系统*/BOOL ShowModule(char *pString, int n); /*显示弹出窗口*/BOOL LoadData(void); /*数据加载*/BOOL SaveData(void); /*保存数据*/BOOL BackupData(void); /*备份数据*/BOOL RestoreData(void); /*恢复数据*/BOOL ExitSys(void); /*退出系统*/BOOL HelpTopic(void); /*帮助主体*/BOOL AboutCollege

23、(void); /*关于系统*/BOOL MaintainProjectInfo(void); /*维护科研项目基本信息*/BOOL MaintainTeamInfo(void); /*维护科研团队基本信息*/BOOL MaintainCollegeInfo(void); /*维护院系基本信息*/void MaintainCollegeInfo_add(void) ; /*维护院系基本信息_录入*/void MaintainCollegeInfo_mod(void) ; /*维护院系基本信息_修改*/void MaintainCollegeInfo_del(void) ; /*维护院系基本信息

24、_删除*/void MaintainTeamInfo_add(void) ;/*维护科研团队基本信息_录入*/void MaintainTeamInfo_mod(void) ;/*维护科研团队基本信息_修改*/void MaintainTeamInfo_del(void) ; /*维护科研团队基本信息_删除*/void MaintainProjectInfo_add(void) ;/*维护科研项目基本信息_录入*/void MaintainProjectInfo_mod(void) ;/*维护科研项目基本信息_修改*/void MaintainProjectInfo_del(void) ; /*维护科研项目基本信息_删除*/void Del_College(COLLEGE_NODE *p);/*维护院系基本信息_删除函数*/void Del_Team(COLLEGE_NOD

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论