科技成果信息管理系统_大学C语言课程设计实验报告

上传人:lizhe****0001 文档编号:29755476 上传时间:2018-01-25 格式:DOCX 页数:89 大小:3.63MB
返回 下载 相关 举报
科技成果信息管理系统_大学C语言课程设计实验报告_第1页
第1页 / 共89页
科技成果信息管理系统_大学C语言课程设计实验报告_第2页
第2页 / 共89页
科技成果信息管理系统_大学C语言课程设计实验报告_第3页
第3页 / 共89页
科技成果信息管理系统_大学C语言课程设计实验报告_第4页
第4页 / 共89页
科技成果信息管理系统_大学C语言课程设计实验报告_第5页
第5页 / 共89页
点击查看更多>>
资源描述

《科技成果信息管理系统_大学C语言课程设计实验报告》由会员分享,可在线阅读,更多相关《科技成果信息管理系统_大学C语言课程设计实验报告(89页珍藏版)》请在金锄头文库上搜索。

1、华中科技大学计算机科学与技术学院C 语言程序设计课程设计基础部分实验报告题目: 科技成果信息管理系统专业: 计算机科学与技术 班级: 1204 学号: 姓名: 成绩: 指导教师: 目录一、系统功能结构设计 1二、数据结构设计 1三、程序结构 4四、函数原型及功能 9五、试验结果 13六、实验体会 29七、附录 1:参考文献 31八、附录 2:程序清单 31C 语言课程设计实验报告1一、 系统功能结构设计航科技成果信息管理系统由五大功能模块组成:文件模块,编辑模块,查询模块,统计模块,帮助模块。如下图所示:科 技 成 果 信 息 管 理 系 统文 件 模 块加 载 数 据保 存 数 据编 辑 模

2、 块添 加 单 位删 除 单 位编 辑 单 位添 加 科 技成 果删 除 添 加科 技 成 果编 辑 添 加科 技 成 果添 加 添 加科 技 成 果删 除 添 加科 技 成 果编 辑 添 加科 技 成 果查 询 模 块查 询 单 位查 询 科 技成 果查 询 完 成人 员统 计 模 块统 计 各 单位 科 技 成果 总 数 及各 类 成 果数统 计 各 单位 成 果 排名统 计50 岁以 下 第 一完 成 人帮 助 模 块软 件 信 息及 作 者 信息二、 数据结构设计1. 单位信息链结点结构(DEPT_NODE)及用法typedef struct dept_nodeC 语言课程设计实验报告

3、2char number8; /*单位编号*/char name30; /*单位名称*/char PIC20; /*负责人*/struct dept_node *next; /*指向下一结点*/struct archs_node *achs; /*指向科技成果信息链结点的指针*/GtkTreeIter iter; /*treeview 中对应 treeiter*/ DEPT_NODE;2. 科技成果信息链结点结构(ACHS_NODE)及用法typedef struct achs_nodechar number12; /*成果编号*/char name50; /*成果名称*/char field

4、20; /*所属技术领域*/char first_dept_name30; /*第一完成单位*/char first_dept_number8; /*第一完成单位编号*/char first_member_name20; /*第一完成人 */char award_name30; /*获奖名称*/char award_level10; /*获奖档次*/char award_grade10; /*获奖等级*/struct arhs_node *next; /*指向下一节点*/struct member_node *members; /*指向完成人员信息结点的指 */GtkTreeIter iter

5、; /*treeview 中对应 treeiter*/ ACHS_NODE;中文字段名 类型及长度 变量名 举例成果编号 char12 numbe 200703150001成果名称 char40 name The_method_of_study所属技术领域 char20 field computer第一完成单位 char30 first_dept_name Huazhong_university_of_sci&tech第一完成单位编号first_dept_numberfirst_dept_number 43007401第一完成人 char20 first_member_name Lu_zhen

6、gding获奖名称 char30 award_name Natural_science_of_hubie_province 获奖档次 char10 award_level province /*省级*/获奖等级 int award_grade 1 /*一等奖*/中文字段名 类型及长度 变量名 举例单位编号 char8 number 43007401单位名称 char30 name Huazhong_university_of_sci&tech负责人 char20 PIC Li_peigengC 语言课程设计实验报告23. 完成人员信息链结点结构(MEMBER_NODE)及用法typedef s

7、truct member_nodechar number18; /*身份证号*/char name20; /*姓名*/char dept_name30; /*工作单位*/char sex4; /*性别 */int age; /*年龄*/char title15; /*职称*/int rank; /*成果排名*/char achs_name40; /*所属成果名称*/struct member_node *next;/*指向下一个结点*/GtkTreeIter iter; /*treeview 中对应 treeiter*/ MEMBER_NODE;中文字段名 类型及长度 举例姓名 char20

8、number Lu_zhengding身份证号 char18 name 420111194801012216工作单位 char30 dept_name Huazhong_university_of_sci&tech性别 char sex m年龄 int age 60职称 char15 title professor成果排名 int rank 1所属成果名称 char40 achs_name The_method_of_study4. 三方向的十字交叉链表结构5. 登陆窗体控件结构体(wgt)及用法struct login_widgetGtkWidget *window; /主窗体科技成果 1

9、科技成果 2科技成果 n单位 1 单位 2 单位 n 主链头gp_head经停航班 1 经停航班 n C 语言课程设计实验报告3GtkWidget *label_tips; /用于信息提示的标签GtkWidget *button_login; /两个按钮,一个点击后登录,一个点击后退出GtkWidget *button_exit;GtkWidget *entry_username; /两个文本框,用于输入用户名和密码GtkWidget *entry_pwd;GtkWidget *label_username; /两个标签用于显示 username 文本框和password 文本框提示GtkWi

10、dget *label_pwd;GtkWidget *vbox; /垂直布局盒子,包含以下三个水平布局盒子GtkWidget *hbox_username; /包含用户名提示标签和用户名文本框,下面的 HBOX 作用类似GtkWidget *hbox_pwd;GtkWidget *hbox_button; wgt;说明:将登陆窗体相关控件独立成一个结构体6. 指向 3 种节点的指针联合及用法typedef union nodep struct dept_node *dept;struct achs_node *achs;struct member_node *member; nodep;说明:

11、用于 3 种结构都会用到但不会同时用到的情形7. 两个传递参数的结构及其用法struct nodecreate GtkWidget *window;GtkWidget *entry9;nodep unp;int type;struct query_judge GtkWidget *entry;int flag;说明:GTK 信号连接 g_signal_connected 将函数与信号链接后之内传递一个参数给函数,所以定义这两个结构分别将几个参数结合在一起传递C 语言课程设计实验报告4三、 程序结构1. 主程序运行流程2. 数据保存流程主界面初始化加载数据或重新添加系统功能模块的选择及运行退出系

12、统前提示保存链表数据清理内存中的缓存信息,关闭系统开始结束登陆框出现输入用户名与密码开始打开航班,经停机场,经停航班信息文件P1=NULLC 语言课程设计实验报告5YNYNYN在文件 1 写入一条单位信息P2=NULLP1=P1-next在文件 2 写入一条科技成果信息 P2=p2-nextP3=NULL关闭文件退出系统在文件 3 写入一条完成人员信息P3=p3-next结束C 语言课程设计实验报告63. 添加流程4. 单位查询流程C 语言课程设计实验报告75. 统计 50 岁以下第一完成人流程开始调用统计函数 statis_func3P1=NULLC 语言课程设计实验报告8YNYNN NY四

13、、 函数原型及功能创建一个GtkListStore ,P1=gp_head取链表的链头指针 P1P1=p1-next获取第二级链表的链头指针p2=p1-achsP2=NULLP2=p2-nextP3=MEMBER_search(p2-first_member_name,p2-members)P3-age#include #include #include #define NAME root#define PWD 123456/*结构声明*/*完成人员信息链结点结构*/typedef struct member_nodechar number18; /*身份证号*/char name20; /*姓名*/char dept_name30; /*工作单位*/char sex4; /*性别 */int age; /*年龄*/char title15; /*职称*/int rank; /*成果排名*/char achs_name40; /*所属成果名称*/struct member_node *next;/*指向下一个结点*/GtkTreeIter iter;

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 研究报告 > 综合/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号