C语言职工信息管理系统实训报告
![C语言职工信息管理系统实训报告](https://img.360docs.net/img44/1816hyor71tzai88svwm9va7tx5cgqd5-41.webp)
![C语言职工信息管理系统实训报告](https://img.360docs.net/img44/1816hyor71tzai88svwm9va7tx5cgqd5-c2.webp)
程序设计工程训练
报告
职工信息管理系统
课程名称C语言程序设计工程训练
姓名
院(系)
专业班级
学号
指导教师
目录
1 需求分析 (1)
2 系统总框图和功能模块说明 (1)
2.1 系统总框图 (1)
2.2 功能模块说明 (2)
3 系统设计 (2)
3.1 主要结构体 (2)
3.2主要功能函数 (3)
3.3 关键函数的流程图 (4)
4 系统调试 (4)
5 总结 (9)
6 源程序清单 (10)
1 需求分析
职工信息包括职工号、姓名、性别、年龄、学历、工资、住址、电话(职工号不重复)。试设计职工信息管理系统,使之能提供以下功能:
●系统以菜单方式工作
●职工信息录入功能(职工信息用文件保存)--输入
●职工信息浏览功能--输出
●职工信息查询功能-算法(其中查询方式可以按学历查询、按职工号查询等)
●职工信息删除、修改功能
2 系统总框图和功能模块说明
2.1 系统总框图
图1 系统总框图
2.2 功能模块说明
1.菜单模块:显示职工管理系统的主菜单,供用户选择所需的功能,通过自己定义的void menu()函数来实现。
2.输入模块:输入职工的工号、姓名以及其它的一些职工的相关信息,通过自己定义的void input()函数来实现。
3.保存模块:将内存中职工的信息输出到磁盘文件中,可以通过自己定义的void save(int)函数来实现。
4.浏览模块:浏览所有职工的相关信息,通过自己定义的void display()函数来实现。
5.删除模块:删除需要删除的职工的所有信息,通过自己定义的void del()函数来实现。
6.添加模块:添加需要添加的职工的相关信息,通过自己定义的void add()函数来实现。
7.按职工的的学历查询模块:可以按职工的学历来查询职工的相关信息,通过自己定义的void search_xuelil函数来实现。
8.按职工的电话号码查询模块:可以按职工的电话来查询职工的相关信息,通过自己定义的void search_tel函数来实现。
9.修改模块:可以修改需要修改的职工的相关信息,通过自己定义的void modify()函数来实现。
10.退出系统模块:退出职工信息管理系统,通过头文件windows.h中的exit(0)函数来实现。
3 系统设计
3.1 主要结构体
struct employee //定义一个职工信息的结构体
{
int num;
char name[10];
char sex;
int age;
char xueli[30];
int wage;
char addr[30];
char tel[20];
}em[100]; }; 3.2主要功能函数
void menu();
void input();
void save(int);
void display();
void del();
void add();
void search();
void search_num();
void search_xueli();
void search_tel();
void modify();
3.3 系统的总体流程图
4 系统调试
1.运行程序,进入职工信息管理系统的主菜单:
2.输入数字“1”进行录入职工信息:
3.录入职工信息
4.输入“2”浏览职工信息:
5.输入“y”后继续,输入“3”进行查询职工信息:
6.进入主菜单,输入“4”进行删除职工信息:
8.进入主菜单输入“6”进行修改职工信息:
5 总结
通过这次课程设计,增加了我们对软件技术的了解,虽然还不明确软件技术包含的具体内容,但从学习C语言这门课程开始,已发现程序设计的好处,它对我们数学的学习也有很大的帮助。在学习C语言的过程中也学到和巩固了许多计算机应用基础知识,对计算机的机体也有了一个较为详细的了解。在具体操作中对这学期所学的C语言的理论知识得到巩固加强,达到实训的目的,也发现自己的不足之处,为我们以后的c语言学习奠定了基础,同时体会到C语言具有的语句简洁,使用灵活,执行效率高等特点。发现上机操作的重要作用,特别是对数组和循环有了深刻的理解。通过实际操作,学会C 语言程序编程的基本步骤、基本方法,开发了自己的逻辑思维能力,培养了分析问题、解决问题的能力。
由于本课题中的许多知识点都没有学过都要靠自己到课外的资料中去查找。在用的时候难免出现这样那样的错误。如开始设计出来的菜单不是预想的那样,而是总个窗中出现混乱。解决的这个问题的办法是调整。一个系统的菜单和提示信息非常重要。如果没有这些用户根本不知道怎么用你设计的这个系统。在设计的调试过程中也无法顺利的完成调试工作。有了一个清晰简单的菜单和一些提示信息这后,调试过程完成的比较顺利。
回顾起此次课程设计,至今我们仍感慨颇多,的确,从拿到题目到完成整个编程,从理论到实践,在这些日子里,可以学到很多很多的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我们懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,比如说结构体……通过这次课程设计之后,一定把以前所学过的知识本次课程设计结束了,对于我们的影响很大。我们通过这次实践学到了许多知识。学到了设计一个简单的系统。要注意哪些方面。也使我们知道自己哪些方面做得还不够。
6 源程序清单
#include
#include
#include
#include
#define N 100
struct employee
{
int num;
char name[10];
char sex;
int age;
char xueli[30];
int wage;
char addr[30];
double tel;
}em[100]; /*定义一个结构体*/
void menu();
void input();
void save(int);
void display();
void del();
void add();
void search();
void search_num();
void search_xueli();
void search_tel();
void modify(); /*定义各函数*/
void menu() /*菜单函数*/
{
printf("计算机科学与技术专业\n");
printf("\n");
printf("计算机123班敖立伟\n");
printf("\n");
printf(" ******************职工信息管理系统****************\n"); printf(" 1.录入职工信息");
printf(" 2.浏览职工信息\n");
printf(" 3.查询职工信息");
printf(" 4.删除职工信息\n");
printf(" 5.添加职工信息");
printf(" 6.修改职工信息\n");
printf(" 7.退出\n");
printf(" ********************谢谢使用******************\n");
printf("\n");
printf("\n");
}
void main()
{
int n,flag;
char a;
menu(); /*调用菜单函数*/
do
{
printf("请选择你需要操作的步骤(1--7):\n");
scanf("%d",&n);
if(n>=1&&n<=7)
{
flag=1;
break;
}
else
{
flag=0;
printf("您输入有误,请重新选择!");
}
}
while(flag==0);
while(flag==1)
{
switch(n)
{
case 1:printf(" ◆◆◆输入职工信息◆◆◆\n");printf("\n");input();break;
case 2:printf(" ◆◆◆浏览职工信息◆◆◆\n");printf("\n");display();break;
case 3:printf(" ◆◆◆按职工号查询职工信息◆◆◆\n");printf("\n");search();break;
case 4:printf(" ◆◆◆删除职工信息◆◆◆\n");printf("\n");del();break;
case 5:printf(" ◆◆◆添加职工信息◆◆◆\n");printf("\n");add();break;
case 6:printf(" ◆◆◆修改职工信息◆◆◆\n");printf("\n");modify();break;
case 7:exit(0);break;
default :break;
}
getchar();
printf("\n");
printf("是否继续进行(y or n):\n");
scanf("%c",&a);
if(a=='y')
{
flag=1;
system("cls"); /*清屏*/
menu(); /*调用菜单函数*/ printf("请再次选择你需要操作的步骤(1--6):\n");
scanf("%d",&n);
printf("\n");
}
else
exit(0);
}
}
void input() /*录入函数*/
{
int i,m;
printf("请输入需要创建信息的职工人数(1--100):\n");
scanf("%d",&m);
for (i=0;i { printf("请输入职工号:"); scanf("%d",&em[i].num); printf("\n"); printf("请输入姓名: "); scanf("%s",em[i].name); getchar(); printf("请输入性别(f--女m--男): "); scanf("%c",&em[i].sex); printf("请输入年龄: "); scanf("%d",&em[i].age); printf("请输入学历: "); scanf("%s",em[i].xueli); printf("请输入工资: "); scanf("%d",&em[i].wage); printf("请输入住址: "); scanf("%s",em[i].addr); printf("请输入电话: "); scanf("%lf",&em[i].tel); printf("\n"); } printf("\n创建完毕!\n"); save(m); } void save(int m) /*保存文件函数*/ { int i; FILE*fp; if ((fp=fopen("employee_list","wb"))==NULL) /*创建文件并判断是否能打开*/ { printf ("cannot open file\n"); exit(0); } for (i=0;i if (fwrite(&em[i],sizeof(struct employee),1,fp)!=1) printf("file write error\n"); fclose(fp); } int load() /*导入函数*/ { FILE*fp; int i=0; if((fp=fopen("employee_list","rb"))==NULL) { printf ("cannot open file\n"); exit(0); } else { do { fread(&em[i],sizeof(struct employee),1,fp); i++; } while(feof(fp)==0); } fclose(fp); return(i-1); } void display() /*浏览函数*/ { int i; int m=load(); printf("\n 职工号\t姓名\t性别\t年龄\t学历\t工资\t住址\t电话\n"); for(i=0;i printf("\n %d\t%s\t%c\t%d\t%s\t%d\t%s\t%.0lf\n",em[i].num,em[i].name,em[i].sex,em[i].age,em[i].xueli,e m[i].wage,em[i].addr,em[i].tel); } void del() /*删除函数*/ { int m=load(); int i,j,n,t,flag; char name[20]; printf("\n 原来的职工信息:\n"); display(); /* 调用浏览函数*/ printf("\n"); printf("请输入要删除的职工的姓名:\n"); scanf("%s",name); for(flag=1,i=0;flag&&i { if(strcmp(em[i].name,name)==0) { printf("\n已找到此人,原始记录为:\n"); printf("\n职工号\t姓名\t性别\t年龄\t学历\t工资\t住址\t电话\n"); printf("\n%d\t%s\t%c\t%d\t%s\t%d\t%s\t%.0lf\n",em[i].num,em[i].name,em[i].sex,em[i].age,em[i].xueli,em [i].wage,em[i].addr,em[i].tel); printf("\n确实要删除此人信息请按1,不删除请按0\n"); scanf("%d",&n); if(n==1) /*如果删除,则其他的信息都往上移一行*/ { for(j=i;j { strcpy(em[j].name,em[j+1].name); em[j].num=em[j+1].num; em[j].sex=em[j+1].sex; em[j].age=em[j+1].age; strcpy(em[j].xueli,em[j+1].xueli); em[j].wage=em[j+1].wage; strcpy(em[j].addr,em[j+1].addr); em[j].tel=em[j+1].tel; } flag=0; } } } if(!flag) m=m-1; else printf("\n对不起,查无此人!\n"); printf("\n 浏览删除后的所有职工信息:\n"); save(m); /*调用保存函数*/ display(); /*调用浏览函数*/ printf("\n继续删除请按1,不再删除请按0\n"); scanf("%d",&t); switch(t) { case 1:del();break; case 0:break; default :break; } } void add()/*添加函数*/ { FILE*fp; int n; int count=0; int i; int m=load(); printf("\n 原来的职工信息:\n"); display(); /* 调用浏览函数*/ printf("\n"); fp=fopen("emploee_list","a"); printf("请输入想增加的职工数:\n"); scanf("%d",&n); for (i=m;i<(m+n);i++) { printf("\n 请输入新增加职工的信息:\n"); printf("请输入职工号: "); srand((int)time(0)); em[i].num=rand()%10000+20000000; if(em[i].num!=em[i-1].num) printf("%8d ",em[i].num); printf("\n"); printf("请输入姓名: "); scanf("%s",em[i].name); getchar(); printf("请输入性别(f--女m--男): "); scanf("%c",&em[i].sex); printf("请输入年龄: "); scanf("%d",&em[i].age); printf("请输入学历: "); scanf("%s",em[i].xueli); printf("请输入工资: "); scanf("%d",&em[i].wage); printf("请输入住址: "); scanf("%s",em[i].addr); printf("请输入电话: "); scanf("%lf",&em[i].tel); printf("\n"); count=count+1; printf("已增加的人数:\n"); printf("%d\n",count); } printf("\n添加完毕!\n"); m=m+count; printf("\n浏览增加后的所有职工信息:\n"); printf("\n"); save(m); display(); fclose(fp); } void search()/*查询函数*/ { int t,flag; do { printf("\n按职工号查询请按1 ; 按学历查询请按2 ; 按电话号码查询请按3,进入主函数按4\n"); scanf("%d",&t); if(t>=1&&t<=4) { flag=1; break; } else { flag=0; printf("您输入有误,请重新选择!"); } } while(flag==0); while(flag==1) { switch(t) { case 1:printf("按职工号查询\n");search_num();break; case 2:printf("按学历查询\n");search_xueli();break; case 3:printf("按电话号码查询\n");search_tel();break; case 4:main();break; default:break; } } } void search_num() { int num; int i,t; int m=load(); printf("请输入要查找的职工号(0--1000000000):\n"); scanf("%d",&num); for(i=0;i if(num==em[i].num) { printf("\n已找到此人,其记录为:\n"); printf("\n职工号\t姓名\t性别\t年龄\t学历\t工资\t住址\t电话\n"); printf("\n%d\t%s\t%c\t%d\t%s\t%d\t%s\t%.0lf\n",em[i].num,em[i].name,em[i].sex,em[i].age,em[i].xueli,em [i].wage,em[i].addr,em[i].tel); break; } if(i==m) printf("\n对不起,查无此人\n"); printf("\n"); printf("返回查询函数请按1,继续查询职工号请按2\n"); scanf("%d",&t); switch(t) { case 1:search();break; case 2: break; default:break; } } void search_xueli() { char xueli[30]; int i,t; int m=load(); printf("请输入要查找的学历:\n"); scanf("%s",xueli); for(i=0;i if(strcmp(em[i].xueli,xueli)==0) { printf("\n已找到,其记录为:\n"); printf("\n职工号\t姓名\t性别\t年龄\t学历\t工资\t住址\t电话\n"); printf("\n%d\t%s\t%c\t%d\t%s\t%d\t%s\t%.0lf\n",em[i].num,em[i].name,em[i].sex,em[i].age,em[i].xueli,em [i].wage,em[i].addr,em[i].tel); } if(i==m) printf("\n对不起,查无此人\n"); printf("\n"); printf("返回查询函数请按1,继续查询学历请按2\n"); scanf("%d",&t); switch(t) { case 1:search();break; case 2:break; default :break; } } void search_tel() { long int tel; int i, t; int m=load(); printf("请输入要查找的电话号码:\n"); scanf("%lf",&tel); for(i=0;i if(tel==em[i].tel) { printf("\n已找到此人,其记录为:\n"); printf("\n职工号\t姓名\t性别\t年龄\t学历\t工资\t住址\t电话\n"); printf("\n%d\t%s\t%c\t%d\t%s\t%d\t%s\t%.0lf\n",em[i].num,em[i].name,em[i].sex,em[i].age,em[i].xueli,em [i].wage,em[i].addr,em[i].tel); break; C语言程序设计 实训报告 题目:红外避障机器人 院(系):信息工程系 专业:通信工程 学生姓名:韦嘉宝 学号: 24 指导教师:朱震周斌王旬全刘辉 2016 年10月8 日 目录 摘要 (1) 设计要求 (2) 设计步骤 (3) 代码编写 (4) 心得体会 (5) 参考文献 (6) 许多机器人使用雷达(RADAR)或者声纳(SONAR)来探测物体而不需要同物体接触。本文的方法是使用红外光来照射机器人前进的路线,然后确定何时有光线从被探测目标反射回来,通过检测反射回来的红外光就可以确定前方是否有物体。由于红外遥控技术的发展,现在红外线发射器和接收器已经很普及并且价格很便宜。 随着微电子技术的不断发展,微处理器芯片的集成程度越来越高,单片机已可以在一块芯片上同时集成CPU、存储器、定时器、并行和串行接口、看门狗、前置放大器、A/D转换器、D/A转换器等多种电路,这就很容易将计算机技术与测量控制技术结合,组成智能化测量控制系统。这种技术促使机器人技术也有了突飞猛进的发展,目前人们已经完全可以设计并制造出具有某些特殊功能的简易智能小车。 机器人使用红外线二极管LED 作为前灯,如图6-1 所示。红外线二极管发射红外光线,如果机器人前面有障碍物,红外线从物体反射回来,相当于机器人眼睛的红外检测(接收)器,检测到反射回的红外光线,并发出信号来表明检测到从物体反射回红外线。机器人的大脑——单片机A T89S52 基于这个传感器的输入控制伺服电机。红外线(IR)接收/检测器有内置的光滤波器,除了需要检测的980 nm 波长的红外线外,它几乎不允许其他光通过。红外检测器还有一个电子滤波器,它只允许大约38.5 kHz 的电信号通过。换句话说,检测器只寻找每秒闪烁38500 次的红外光。这就防止了普通光源像太阳光和室内光对IR 的干涉。太阳光是直流干涉(0Hz)源,而室内光依赖于所在区域的主电源,闪烁频率接近100 Hz 或120 Hz。由于120 Hz 在电子滤波器的38.5 kHz 通带频率之外,它完全被IR 探测器忽略。 本任务将搭建并测试红外线发射和检测器对。本讲需要用到的新部件如下: 元件清单 (1)红外检测器,2 个。 (2)IR LED(带套筒),2 个。 (3)470? 电阻,2 个。 (4)连接线,若干。 二、设计要求 (1)小车能够完成前进、后退、左转、右转等动作。 (2)机器人能够读出传感器电平变化,并作相应的动作变化。 (3)利用机器人所装配的两个探测器,探测和避开障碍物。 三、设计步骤 实验一认识计算机硬件和网络结构 一、实验题目 认识计算机硬件和网络结构。 二、实验课时 2课时。 三、实验目的 认识计算机的主要构成部件、功能、型号、在计算机机箱内的位置、网络结构等。 四、实验内容和要求 1、利用多媒体演示计算机的主要组成部件:机箱、主板、CPU、内存条、硬盘、软驱、光驱、插槽、BUS总线、串行接口、并行接口、USB接口等; 2、打开机箱,实物展示并讲解个部件的功能及其连接; 3、机箱、主板、CPU、CPU风扇、内存条、显卡、网卡等分别如下所示。 机箱主板 内存条显卡网卡无线网卡 CPU CPU风扇硬盘 机箱背面并行接口串行接口USB接口 4、观察每个部件在机箱的位置,并掌握每个部件的功能和基本知识。 5、观察实验室网络结构图。 6、结合某网吧的例子更好地理解网络结构。 Parallel port Serial port USB port Keyboard and mouse ports 7、独立完成上述内容,并提交书面实验报告。 五、实验体会 通过本次实验,我了解了计算机的各种硬件和网络结构。知道了各种硬件的形状、功能、特征等。还知道了网络结构的流程、大体构造。这使我对计算机有了初步的认识,为以后更进一步的学习打下了坚实的基础。也为我以后的学习和生活提供了方便。 1、cpu——中央处理器,是一台计算机的运算核心和控制核心。 2、硬盘——是电脑的主要存储媒介之一。 3、主板——又叫主机板、系统板或母板,安装在机箱内,是微机最基本也是最重要的部件之一。 4、机箱——作为电脑配件的一部分,它起的主要作用是放置和固定各电脑配件,起到一个承托和保护作 用。 5、内存条——是连接CPU和其他设备的通道,起到缓冲和数据交换作用。 面向对象课程设计报告课程设计题目:职工信息管理系统 姓名: 班级: 学号: 指导老师: 2011年11月8日 目录 摘要 (3) 第一章绪论 (4) 1.1面向对象C++语言程序设计 (4) 1.2职工信息管理系统 (4) 1.3程序编译环境 (4) 第二章职工信息管理系统需求分析 (5) 2.1编写目的 (5) 2.2需求概述 (5) 2.3需求说明 (6) 第三章:详细设计 (7) 3.1编写目的 (7) 3.2详细设计 (10) 第四章:源程序编码及实现 (11) 4.1程序源代码 (16) 4.2程序实现结果 (17) 第五章:系统测试 (18) 第六章:结束语 (21) 参考文献: (21) 摘要 在当今社会,互联网空间的发展,给人们的工作和生活带来了极大的便利和高效,信息化,电子化已经成为节约运营成本,提高工作效率的首选。当前大量企业的职工管理尚处于手工作业阶段,不但效率低下,还常常因为管理的不慎而出现纰漏。随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。管理信息系统是一个不断发展的新型学科,任何一个单位要生存要发展,要高效率地把内部活动有机地组织起来,就必须建立与自身特点相适应的管理信息系统。 本程序是一个关于职工信息管理的系统,通过这个系统用户可以简捷、方便的对职工信息进行增加、修改、添加、查询、浏览等功能,它不仅可以帮助企业单位达到员工管理办公自动化、节约管理成本、更能达到提高企业单位工作效率的目的。 关键词:职工,信息管理,系统,程序 一.绪论 1.1面向对象C++语言程序设计 C++是种面向对象的程序设计语言,它是在C语言基础上发展起来的。虽然它不是最早的面向对象的程序设计语言,但是它是目前使出比较广泛的面向对象的程序设计语言。 什么是面向对象?简单地说,它和面向过程—样都是软件开发的一种方法。但是它与面向过程不同,面向对象是—种运用对象、类、继承、封装、聚合、消息传递、多态性等概念来构造系统的软件开发方法。 1.2职工信息管理系统 在当今信息技术高速发展的时代,企业单位迫切需要这样一个系统:它能高效的管理企业或单位内部所有员工的个人信息,并能正确快速的对系统的使用者的操作做出回应,以提高效率,降低成本。该系统能够满足以上的要求,使用户可以快速准确的管理员工的信息。 1.3程序编译环境 使用Visual C++ 6.0集成环境来编辑、编译并运行程序。Visual C++ 不仅仅是一个编译器。它是一个全面的应用程序开发环境,使用它你充分利用具有面向对象特性的C++ 来开发出专业级的Windows 应用程序。为了能充分利用这些特性,你必须理解C++ 程序设计语言。 篇一:《C语言上机实验心得》 C语言上机实验心得 在科技高度发展的今天,计算机在人们之中的作用越来越突出。而C语言作为一种计算机的语言,学习它将有助于我们更好的了解计算机,与计算机进行交流,因此,我们一定要学好C语言,这对我们以后的发展是十分重要的。 说到这,上机实验当然就是一个必不可少的环节了,C语言灵活、简洁的特点,只有通过编程实践才能真正了解,真正说懂。为了更好地学习语法规定、掌握程序设计方法、提高程序开发能力,我们必须实际上机、编写程序。 通过实验我也发现了自己不少的问题,这都是只看书上的程序而没有自己亲身上机编写程序而无法得知的,假如我们只因看熟书上的程序就以为自己已经掌握了C语言那就大错特错了。 我主要存在以下的这些缺点 1、学习耐心与细心不足,如scanf(“%d”,&n);中的“&”有时候会忘了。而在最后 输出时又错写成printf(“%d”,&n);从而错误得输出了地址而不是我原来想要的答案。 2、编程思想不够发散,看着题目有时想不出解答的方法,更不用说编写程序来解 题了。 3、 4、基本功不够,有些函数的表达不太精通,需要看书来核实,以致耗时较多。知识不够广,有些内容没有学好,不能要用到时及时反映出来,认识程度不够 深刻。 5、 6、有时候不够精简,有一点用处不大或者说没有也可以的文字存在。英语水平较差,对错误的地方虽然电脑有说,但由于是英文,理解上还是存在 一点问题。 为了能更好地学好C语言,在今后学习中我要更多的动脑,综合运用所学,多看相关东西,多上机练习,提高电脑水平,增强自学能力,把已会的东西掌握好。 实验中我深刻意识到完成程序的编写,决不意味着万事大吉。认为万无一失的程序,实际上机运行时可能会出现很多意想不到的问题。有时编译程序检测出一大堆错误,有时程序能够顺利运行,但是运行结果并不是你预期中想要的。因为开发环境所提供的编译系统无法发现程序逻辑错误,或者是你原来所设计时的理论错误,这就只能靠自己的上机经验来分析判断错误的所在了。所以程序的调试是一个技巧性很强的工作,它可能比编一个程序耗时更 多。由此可看出上机实践的重要性。 通过本次C语言上机实验,我对这个介于人类与非人类之间的计算机编程语言有了一定的体验。编程的时候有因为顺利编出程序而开心过、有因为做得比人家慢而郁闷过、有因为不知从何入手而无奈过、有因为不知错出在哪而彷徨过但随着练习的增多,我对C语言比以前熟了很多,不再只是纸上谈兵,我都有能力独立做出一些程序,可能对于一些“高手来说这不算什么,或者他们早就会了,但我依然觉得很开心,因为我跟我自己比是进步了。 目录 一、实践目的 (3) 二、实践任务 (3) 三、解决方案 (4) 1.开发环境 (4) 2.运行所需软件安装与配置 (4) 3.技术方案 (4) 4.解决步骤 (5) 四、实践过程 (5) 1.环境搭建 (5) 2.导入案例 (11) 3.系统分析 (14) 4.编码实现 (15) 5.界面美化 (18) 6.测试调试 (18) 7.运行结果 (18) 五、实训总结 (23) 1.Web应用的建立过程 (24) 2.Web应用的调试步骤与技巧 (25) 3.项目部署与项目拷贝的异同 (27) 4. MySQL 软件、SQLyog 软件、jdbc 连接 jar 包、数据库、表之间的关系 (28) 5. JDK、Tomcat、MyEclipse 之间的关系 (28) 6. severlet、服务类、JSP、JS 之间的配合关系 (28) 7. JSP 页面间的信息传递方式 (29) 六、实践体会与建议 (29) 1.实训日志 (29) 2.实践体会 (30) 3.改进建议 (30) 一、实践目的 本次实践具体目的是通过使用MyEclipse和Sublime Text编辑器,编写代码,使用Java构建系统的后端、HTML\CSS\JavaScript搭建网页、连接MySQL数据库实现挂账信息的增删改查。利用Tomcat应用服务器响应访问请求,搭建一个挂账信息系统,使我们初步熟悉相关软件的操作以及MySQL语句的调用,增强我们对编程的认知,提高我们的兴趣,有利于我们之后的编程语言及数据库学习。 二、实践任务 从表库中选择第14张表挂账单表,开发一个操作挂账单表的 java Web 应用程序,实现所选表信息的增删改查,在 Web Form 中动态显示表或视图中的数据。 《管理信息系统》实验报告 实验项目:教务处排课系统分析 实验学时:18学时 姓名: 学号: 专业班级: 实验时间: 实验成绩: 东北财经大学 《管理信息系统》实验报告实验项目名称: 管理系统实验报告 实验小组成员: 实验对象:教务处排课信息系统 实验对象背景介绍:教务管理系统是一个庞大而复杂的系统,它包括:学生学籍管理 系统、排课系统、教师管理系统、学生成绩系统、系统设置、班级信息系统、教学培养计划管理系统、教学资源管理系统、招生系统教务信息发布系统和事务处理系统。随着科学技术的进步与相应的管理信息系统的升级,教务系统管理平台充分利用互联网络B/S管理信息模式,以网络为平台,为各个学校教务系统的管理提供一个平台,帮助学校管理教务系统,用一个帐号解决学校教务教学管理,并且学校可以自由选择学校需要的教务管理系统,灵活地定制符合学校自己实际情况的教务系统。教务管理系统内部子系统多样庞杂,今天我们主要讨论的研究对象是排课管理信息系统。 排课管理系统是每个学校必不可少的内容,它的优劣直接学校教学工作质量和学校的正常教学活动秩序。随着现在生源数量的不断增长以及各行业竞争日益激烈,为了满足中国社会主义事业发展对高素质人才的需求,各大高校都在尽自己努力,以本校现状及需求作为基础,以科技发展进步作为依托,发展完善一个功能完整,操作简单快捷,高效率,与本校其他教务管理系统良好适应的排课系统与之配套,使教师等教学资源利用达到最大化,为学生提供优良的教育环境。因此,东北财经大学作为一个知名的财经类高校,要达到适应教育现状及提高自身教育层次的目标,完善教务排课管理系统显得尤为重要。 系统功能简述 排课管理系统需要合理调配各个班级专业所需的专业课程选修必修课程,相应教师,教师及上课班级,尽可能全面的考虑到教师的身体状况,工作条件,家庭状况甚至与学校距离,教师及学生时间,各种课程按重要程度以及学生兴奋点和接受能力合理排序,教师的容量用途,学校集体活动或教师会议等多方面因素,以计算机安排为主,手工调整为辅的方式做出各个院系各个专业各个班级的课程安排。 排课管理系统的目标不仅是对于原有系统进行改进提高,还使课程管理科学化系统化准确化,减少手工录入的误差可能性,方便操作者的随时添加、查询、修改,是统计表格格式规范化统一化,提高工作效率,降低人工成本,提高处理数据能力与速度,提高教学质量,优化学校教务管理系统,为学校的进一步发展提供技术支持与可能性。 系统分析 (1)系统分析任务:根据系统设计任务书所确定的范围,并在充分认识原有系统的基础上进行详细的调查分析,通过问题识别、可行性分析、详细调查、系统化分析,进而确定新系统的基本目标和逻辑功能结构,最后完成新系统的逻辑方案设计。 (2)可行性分析和详细调查概述:由于实验的限制,假定建立排课管理信息系统在管理上、技术上、经济上都是可行的。而详细调查采用一定的调查方法发现了现行系统有以下优缺点: 现有系统优缺点分析 1.选课分为预选、正选、补退选,一定程度上完善了选课系统。 2.在选课中,按年级差异区分次序,一定程度上缓解短时间内系统压力,保证了高年级学生顺利完成课业。 计算机科学和工程学院 课程设计报告 题目全称:员工管理信息系统的设计和实现—岗位和薪金信息管理 学生学号:2606005011姓名:李伟德 指导老师:刘勇国职称:副教授 指导老师评语: 签字: 课程设计成绩: 设计过程表现设计报告质量总分 一、实验室名称:计算机学院软件实验室 二、实验项目名称:员工管理信息系统的设计和实现—岗位和薪 金信息管理 三、实验学时:32 四、实验原理: 员工管理信息系统是由员工管理,部门管理,岗位管理以及薪金管理四部分组成。系统前台采用Visual Stdio 2005 工具开发而成,开发语言是C#程序设计语言,主要是因为C#是微软为.NET平台量身定做的编程语言,它是一种现代面向对象程序设计语言,使程序员能够快速地在.NET平台上开发种类丰富的使用程序,它继承了C++和Java的语法,去掉了C++中的许多复杂和容易引起问题的东西,是由C和C++发展而来的一种“简单、高效、面向对象、类型安全”的程序设计语言,其综合了Visual Basic的高效率和C++的强大功能。 系统后台的数据库采用Miscrosoft Access 2003数据库,主要依据是考虑到系统的数据规模并不大,如果用SQL Server 2005等数据库会造成浪费,而且维护起来比较难。而Access数据库是一个轻量级的数据库,其具有简单,方便的特性,已经满足我们的需求。 五、实验目的: 1.使学生掌握数据库的实现原理,了解SQL的查询命令,并能在实践中使用。 2.使学生学会使用C#语言进行程序设计,了解Vistual Stdio 2005 的开发工具的原理, 并设计出实际可行的项目。 3.加强学生的动手能力,把课堂上学到得东西,融入到实际的项目,达到学以致用的目的。 4.锻炼学生的思维能力,使学生能够领略计算机编程的实现方法,达到举一反三的效果。 六、实验内容: 在员工信息管理系统中完成“岗位”和“薪金”信息管理功能。 岗位信息管理功能包括: 1. 添加岗位:可以添加岗位名称,岗位描述等信息。 2. 删除岗位:可以删除岗位名称,岗位描述等信息。 3. 修改岗位:可以修改指定岗位的岗位名称,岗位描述等信息。 4. 查询岗位:可以查询指定岗位的岗位名称,岗位描述等信息。 薪金信息管理功能包括: 1. 添加员工薪金信息:可以添加员工姓名,月份,备注,薪金等信息。 2. 删除员工薪金信息:可以删除指定员工的姓名,月份,备注,薪金等信息。 3. 修改员工薪金信息:可以修改指定员工的姓名,月份,备注,薪金等信息。 4. 查询员工薪金信息:可以查询指定员工的薪金等信息。 七、实验器材(设备、元器件): 1.一台Windows XP平台或以上的PC机; 2.Vistual Stdio 2005开发软件及Microsoft ACCESS2003数据库软件; 八、实验步骤: 1、设计系统结构组成 系统提供了一套员工综合信息管理平台,使得系统管理人员对公司的岗位进行分类,进而确定各个岗位所对应的部门信息,在已有部门信息的基础上能够对所有员工信息进行分类管理。主要功能有:岗位设置、员工个人信息管理、员工所属部门信息管理、员工薪金信息管理。 系统模块设计划分如下: 员工薪金信息模块:可以删除、添加、修改和查询员工薪金信息; 岗位设置模块:可以删除、添加、修改和查询岗位; 它们之间既是相互联系同时又是彼此独立的,整个框架结构如图1所示。 设计报告 一,实验目的: 通过上机实习,熟练掌握循环语句、选择语句、指针以及结构体的运用技巧。在实习中通过 实际操作,编写程序,发现问题,最后解决问题,提升对c语言实用性的理解,在实践中巩固各知 识点。 C语言是一种计算机程序设计语言。它既具有高级语言的特点,又具有汇编语言的特点,上 机实习可以帮助我们更好地理解这种结构式的 中级语言以及其各式各样的数据类型和高效率 的运算程序,为我们进一步学习C++打下坚实基 础。 同时,在实习过程中,通过互相发现问题,共同解决问题,不仅锻炼了我们的合作能力,而 且也让我们发现了一些自己的个人误区以及其 他人容易犯的错误,从而在今后的学习中更加谨 慎,达到事半功倍的效果;通过询问老师,也让 我们养成了不耻下问的好习惯,这将很有利于以 后的学习。 闲乐-一个人闲。不如大家一块儿乐https://www.360docs.net/doc/465783016.html, 二,总体设计: 1,学生成绩排名 1,流程图: <通过冒泡法对数组进行排序> <测试时由于循环语句循环次数的错误导致部分数据没有排序,修改FOR语言中的条件即可调试成功>C语言实训报告
管理信息系统实验报告
职工信息管理系统课程设计报告(定版)
c语言实验报告总结
信息系统开发实训报告
管理信息系统实验报告
#员工管理信息系统的设计与实现
C语言实习报告