教师信息管理系统(C语言课程设计)_第1页
教师信息管理系统(C语言课程设计)_第2页
教师信息管理系统(C语言课程设计)_第3页
教师信息管理系统(C语言课程设计)_第4页
教师信息管理系统(C语言课程设计)_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

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

文档简介

1、共享知识分享快乐盛年不重来,一日难再晨。及时宜自勉,岁月不待人。课程设计任务书计算机科学与技术 专业 年级班一、设计题目教师信息管理系统设计二、主要内容教师信息包括教师号、姓名、性别、年龄、学历、职称、工资、 住址、电话等(教师号不重复)。试设计一教师信息管理系统,使之能 提供以下功能:(1)系统以菜单方式工作(2)教师信息录入功能输入(3)教师信息删除功能(4) 教师信息浏览功能 输出(5)查询和排序功能:(至少一种查询方式)一一算法 按教师号查询按职称查询等三、具体要求围绕课程设计的目的和意义,基本要求如下:1、认真阅读C语言课程设计指导书,明确课程设计的目的、 意义和要求;2、快速总结

2、C 程序设计语言的精髓,如:函数的概念、函数的设 计和函数的调用;3、快速熟悉Tuber C或C+的上机环境。能熟练进行高级编辑操作(特别是字块操作) ;熟悉步进式、断点跟踪的程序调试方法,提高 工作效率。4、根据“课程设计题目” ,采用结构化的程序设计思想,确定系 统的总体设计方案、确 定时间进度。如果是多人共一题,则要首先完 成小组内的人员分工及安排,不允许重题现象。5学习并了解良好的程序设计风格。按质、按量、并按时间完成 课程设计的任务。6提供可运行的课程设计系统,参加上机面试答辩。 本次课程设计的重点是:学会设计并编写函数,掌握好各函数之 间的调用关系;利用文件操作函数,建立数据库并完

3、成对数据库的各 种操作;掌握几种典型算法的应用(如:冒泡法、选择排序法和折半 查找法)。同时锻炼学生根据题目进行分析、设计、编码、调试程序和 书写必要文档的综合处理能力,从实践中学习并体会程序设计的结构 化思想和设计方法。四、进度安排依照教学计划,课程设计时间为 3 周。按照软件工程的思想,软件 系统的分析设计至关重要,并要充分重视书写“文档” 。避免甚至杜绝 “拿到题目就编码”的现象。建议将时间分为三个阶段: 第一阶段,根据题目要求,拿出系统的总体设计方案:即构思各 程序模块的算法,并画出相应的 N-S 图,同时编写相应的文档; 第二阶段,根据 N-S 图编写程序代码并单独调试,再将调试通过

4、 的各个子模块进行集成调试;第三阶段,归纳文档资料,按要求填写在课程设计说明书上, 并参加答辩。三个阶段时间分配的大概比例是: 35:45:20。五、完成后应上交的材料1课程设计的题目、系统的总功能和各子模块的功能;2题目的设计思想(或算法)简述;3主要程序的框图(要求用 N-S 图);4源程序代码(要求在关键的位置有注释,从而增加程序的可读 性);5课程设计的总结报告,主要包括以下内容:(1)课程设计中遇到的主要问题和解决方法;(2)你的创新和得意之处;(3)设计中存在的不足及改进的设想;(4)本次课程设计的感想和心得体会。以上完成的源程序及相关文档,填写在课程设计说明书上, 要求干净整洁,

5、符合课程设计的要求和规范。六、总评成绩卑微如蝼蚁、坚强似大象指导教师签名日期年月日系主任审核日期年月日目录一题目设计思想简述5二程序的NS图72.1总程序的NS图72.2各子函数的N S图72.2.1教师信息录入函数82.2.2教师信息浏览函数82.2.3教师信息删除函数92.2.4教师信息查询函数92.2.5教师信息排序函数10三源程序代码11四. 程序运行效果图334.1登陆界面334.2菜单栏334.3录入功能344.4浏览功能344.5删除功能354.6查询功能354.7排序功能36五. 总结报告375.1课程设计中遇到的主要问题和解决方法375.2你的创新和得意之处375.3设计中存

6、在的不足及改进的设想375.4本次课程设计的感想和心得体会38.题目设计思想简述如上图所示,该教师信息管理系统主要是一个以动态链表的应用 为基础来实现对教师信息的录入,查询,删除等功能。定义教师结构体如下:struct teacherlong nu m;教师号char name20;姓名char sex 5;/性 性别int age;/年龄char edu20; 学历char title20;/ 职称long wage;/工资char addr100; 地址char telep15; 电话struct teacher *next;*head=NULL;主函数只进行口令函数和菜单栏函数的调用,

7、主要工作通过菜单函 数实现。口令为 123456。菜单栏函数通过用 switch 语句实现不同功能的选择, 不同的功能用 不同的子函数实现。录入教师信息通过建立动态单链表来实现。浏览教师信息则通过将链表所有数据顺序输出来实现。 查询功能只要从链表头开始不断往下一个结点读取信息跟所要查 找的信息比较,直到读取到的信息跟所要查找的信息相同或链表尾为 止,并把此结点的信息输出。删除教师信息的函数是通过查找链表中有该信息的结点后将该结 点移出链表,即使该结点前一个结点直接指向该结点后面的结点来达 到删除信息的目的。排序函数是通过交换结点在链表中的位置来实现的,即使得各结 点在链表中的位置便是所要得到的

8、排序该信息应在的位置,这样直接 顺序输出链表的信息时就能按所要的排序输出了。二.程序的NS图i=0当i3输入口令a退出循环i=i+1i=3?F2.1总程序的NS图输入所选择的功能b口令 3次 输入 错误当b6退出 系统教 信 录 功师 息 入 能重新输入所要选择的功能bFFb=2?T教 信 浏 功师 息 览 能TF教信删功教师 信息 查询 功能教师 信息 排序 功能退出系 统师 息 除 能说明:各功能都是通过调用子函数来实现的。2.2各子函数的N S图子函数主要包括教师信息录入,教师信息浏览,教师信息删除,教师信息查询和教师信息排序等 5个。在退出系统时调用了一个保存 信息到文件中的函数,该函

9、数只是简单的应用了文件的读写功能,在 此不写出其NS图。2.2.1教师信息录入函数p仁(struct teacher *)malloc(LEN)输入一个教师号 p1-num教师F链表一一一Head =p1p3=head当p3-next不为空p3=p3-n extp3-n ext=p1当教师号不为0输入教师的姓名,性别,年龄,学历,职称,月薪,住址, 电话n=n+1-录一head=p1p2-n ext=p1p2=p1p仁(struct teacher *)malloc(LEN)输入一个教师号 p1-nump2- next=NULL说明:p仁(struct teacher *)malloc(LEN

10、)中LEN是在程序开头的宏 定义(#define LEN sizeof(struct teacher)。其中n为全局变量,用来统 计链表的结点数,以下出现的n都是同一个。222教师信息浏览函数p=head链表头为空显示“还输出p所指向的位置中的教师的所有信息未录入过信息”p=p-n ext直到p为空说明:实际程序中在链表头为空是提供了可以浏览之前保存在文件中的信息的功能,当选择该功能时就调用了一个读取文件的函数该函数只是对文件读写的简单应用,详细请看后面第三部分代码,这 里不写出其N-S图。p仁head2.2.3教师信息删除的函数录过师啟 未入教信当 i!=p1-num1-next 为空?TF

11、p2=p1退出 循环p1=p1- n exti!=p1- num?TFTFhead=p1- n ext p2-n ext=p1- next输出“已录入 的教师信息 中没有该教 师号”n=n-12.2.4教师信息查询的函数在查询方面程序为用户提供了4种不同方式的查询,每一种方式共享知识分享快乐的查询为一个子函数,此时也是采用一个菜单栏函数进行选择查询方 式并调用该种方式的函数。菜单栏函数跟主程序菜单栏的算法一样, 此处只给出查询函数的NS图。输出“还未录入程序”并退出函数输入要查找的教师信息的对应方法的对应数据ip=head当p非空时跟 P 应信息不等输出p所指向的位置的教师的所有信息j=j+1

12、p=p-n ext卜7不为F输出“已录入的信息中不存在符合i的信息的教师说明:该NS图是对应姓名,教师号,职称,年龄四种查找方式 的函数的。当选择教师号查找时,输入i的即为教师号,与i做比较的 为p中的教师号,选择其他查找方式时类似。225教师信息排序函数排序也跟查询一样给出多种排序方式并采用菜单栏函数,此处也只 给出排序函数的N S图。输出“还未录入过教师信息”并退出函数T-第p1=head卑微如蝼蚁、2坚强似nexti=1当i小于n时j=0当j小于n-i时中的对应彳一p3=p1为链表头?head=p2p3-n ext=p2p仁p2p4=p2-n extp2-n ext=p1p1- n ex

13、t=p4p2=p2-n extP3=p2p2=p4p仁headp2=p1- n ext调用教师信息浏览函数说明:p1,p2指向的结点用来比较,p3, p4是用来记录结点的,当选用的排 序方式不同,p1,p2用来比较的信息为所选方式的信息。三源程序代码#include #include #include #include #defi ne LEN sizeof(struct teacher)/宏定义结构体字节数 int n=0;struct teacher/定义结构体long nu m;教师号char name20;姓名char sex 5;/性 性别int age;/年龄char edu20;

14、/学 历char title20;/ 职称long wage;/工资char addr100; 地址char telep15; 电话struct teacher *n ext;/指向下一个结点 *head=NULL;void key()/ 口令检查的函数int i; long a;for(i=0;inext) if(fwrite(p,sizeof(struct teacher),1,fp)!=1) printf(n 此处数据有误 n);fclose(fp);exit(0);void read()从文件读出数据的函数struct teacher teach299,temp;int i=0;FIL

15、E *fp;char filename20;printf(n 请输入存有教师信息的文件名: ); scanf(%s,filename);if(fp=fopen(filename,rb)=NULL)printf(n 无法打开文件 n);exit(0);fseek(fp,-sizeof(struct teacher),2);/*将位置指针从文件末尾后退 一个结构体的字节数 */fread(&temp,sizeof(struct teacher),1,fp);/* 从所指向的文件中读 出数据存储到结构体变量temp中*/fseek(fp,O,O);将位置指针移到文件的开头if(fread(&teac

16、hi,sizeof(struct teacher),1,fp)=1)/* 判断文件开头 读入的数据是否为空 */printf(n 存有的教师信息如下 :n);while(teachi. num!=temp .n um) 进行循环读取文件printf(教师号:%ld,姓名:%s,性别:%s年龄:%d,学历:s,teachi. nu m,teachi. name,teachi.sex,teachi.age,);printf(职称:sn月薪:ld,住址:s,电话:sn ,teachi.title,teachi.wage,teachi.addr,teachi.telep);i=i+

17、1;fread(&teachi,sizeof(struct teacher),1,fp);/* 从文件中读入数据存储到结构体变量 teach【i 】中 */输出文件中的最后一个信息printf(教师号:%ld,姓名:%s,性别:%s年龄:%d,学历:s,teachi. nu m,teachi. name,teachi.sex,teachi.age,);printf(职称:%sn月薪:%ld,住址:%s,电话:sn ,teachi.title,teachi.wage,teachi.addr,teachi.telep); fclose(fp);else printf(该文件中无

18、教师信息n);/文件为空时输出此处void creat()/录入教师信息的函数struct teacher *p1,*p2,*p3;p1=p2=(struct teacher *)malloc(LEN);/* 申请一个结构体字节数 的空间用来存储一个教师的信息 */printf( 请输入一位教师的教师号(结束录入请输入0):);scanf(%ld,&p1-num);if(p1- num!=0)判断用户是要结束录入还是要存储信息if(head=NULL) head=p1;/* 判断链表是否为空 ,是则将链表头指向 p1*/ else /链表不为空则将链表尾指向 p1p3=head;/p3用来记录

19、链表的尾部while(p3-next!=NULL)/*若p3不是链表尾则将p3指向 下一个结点 */p3=p3-next;p3-next=p1;将最后一个结点指向plwhile(p1- num!=O)判断用户是否结束录入功能/录入该教师号的教师对应的信息printf(姓名:); scanf(%s,p1-name); printf( 性别: ); scanf(%s,p1-sex); printf( 年龄: ); scanf(%d,&p1-age); printf( 学历: ); scanf(%s,p1-edu); printf( 职称: ); scanf(%s,p1-title); printf

20、( 月薪: ); scanf(%ld,&p1-wage); printf( 住址: ); scanf(%s,p1-addr);printf( 电话: ); scanf(%s,p1-telep);n=n+1;/给统计录入的教师数n加一/*判断是否为第一个录入的信息,是则将链表头指向pl,否则将p2指向p1*/if(n=1) head=p1;else p2-next=p1;p2=p1;/p2用来记录链表的最后一个结点p仁(struct teacher *)malloc(LEN); 重新申请空间printf(请输入一位教师的教师号(结束录入请输入0):); scanf(%ld,&p1-num);p2

21、-next=NULL;将最后一个结点指向空void print()/ 输出教师信息的函数struct teacher *p;int i;p=head;if(head!=NULL)/ 判断链表是否为空printf(n这%d位教师的信息为:n,n);doprintf(教师号:%ld,姓名:s,性别:%s年龄:%d,学历:%s,卑微如蝼蚁、坚强似大象共享知识分享快乐职称:sn,p-nu m,p-n ame,p-sex,p-age,p-edu,p-title);prin tf(月薪:%Id,住址:%s,电话:%sn,p-wage,p-addr,p-telep);p=p- next;/将下一个结点的首地

22、址赋给 pwhile(p!=NULL);/ 到链表尾时结束循环else/链表为空时执行以下部分printf(n 你此次登录系统还没有录入教师信息,可进行以 下操作: n);printf(1:【浏览以前保存在文件中的教师信息】2:【开始录入教师信息】 n);printf(3:【退出系统】4:【返回菜单】 n);printf( 请选择: );scanf(%d,&i);while(i4)printf( 选择无效,请重新输入正确选项: );scanf(%d,&i);if(i=1) read();/调用从文件读取数据的函数if(i=2) creat();调用录入信息的函数if(i=3) exit(0);

23、/ 退出系统void del()删除教师信息的函数struct teacher *p1,*p2;long i;if(head=NULL)/ 判断链表是否为空printf(n还未录入过教师信息n);链表为空时输出 return;printf( 请输入要删除教师信息的教师号: );scanf(%ld,&i);p1=head;while(i!=p1-num)/ 直到 p1 指向的结点是要删除的信息位置if(p1-next=NULL) break;/p1 的下个结点为空则退出循环p2=p1;/p2用来记录pl的前一个结点p1=p1-next;/p1 指向下一个结点if(i=p1-num)/ 判断 p1

24、 是否为要删除的信息if(p1=head) head=p1-next;/*若pl为头结点则将头指针指向 p1 的下一个结点 */else p2-next=p1-next;/*p1 非头结点则将 p1 后面的结点连接到 p1 前一个结点的后面 */printf(n 已删除教师号为 %ld 的教师信息 n,i);n=n-1;/记录教师数的n要减一/p1 不是要删除的信息则表示要删除的信息不再链表中else printf(n已录入的教师信息中没有教师号为 ld的n,i); return;void sort1()/按教师号进行排序的函数struct teacher *p1,*p2,*p3,*p4;in

25、t i,j;if(head=NULL)printf(n 还未录入过教师信息 n);return;if(head-next!=NULL) / 判断是否只有一个信息 /用冒泡法排序p仁head;/p1记录用来比较的两个结点中的前面一个 p2=head- next;/p2记录比较的两个结点中的后面个 for(i=1;in;i+)/ 实现 n-1 趟比较的外循环for(j=0;jnump2-num)/* 比较相邻两个结点中教师号大小 */卑微如蝼蚁、坚强似大象共享知识分享快乐/当pl的教师号大时则对调两个结点的位置if(p1=head) head=p2;else p3-next=p2;/*p1 为头结

26、点时则将头指针指向p2,否则就将p2连接到用来记录pl前一个结点的p3的后面*/p4=p2-next;/p4用来记录p2后面的结点p2-next=p1;/p1的结点换到原来p2的位置 p1-next=p4;原来p2后面的结点连接到pl p3=p2;/p3 记录下 p2 的位置p2=p4;/p2 指向原来位置的下一个结点else/*p1中教师号没有打过p2中教师号,则将p1, p2 都指向它们各自位置的下一个结点 */p3=p1;记录pl后移一位后它前个结点的位置 p1=p2;p2=p2-next;p1=head;/p1 指向链表头,开始下一趟外循环的准备 p2=p1- next;/p2指向链表

27、第二个结点printf(n 按教师号排序后的教师信息如下: n);prin t();调用教师信息浏览函数void sort2()按月薪排序的函数,算法跟按教师号排序的一样struct teacher *p1,*p2,*p3,*p4;int i,j;if(head=NULL)printf(n 还未录入过教师信息 n); return;if(head-next!=NULL)p1=head; p2=head-next; for(i=1;in;i+)for(j=0;jwagep2-wage)if(p1=head) head=p2; else p3-next=p2; p4=p2-next;p2-next

28、=p1;p1-next=p4; p3=p2;卑微如蝼蚁、坚强似大象共享知识 分享快乐p2=p4;elsep3=p1;p1=p2;p2=p2-next;p1=head;p2=p1-next;printf(n 按月薪排序后的教师信息如下: n);print();void sort3()按年龄排序的函数,算法跟按教师号排序的一样struct teacher *p1,*p2,*p3,*p4;int i,j;if(head=NULL)printf(n 还未录入过教师信息 n);return;if(head-next!=NULL)p1=head;p2=head-next;for(i=1;in;i+)for

29、(j=0;jagep2-age)if(p1=head) head=p2; else p3-next=p2; p4=p2-next;p2-next=p1;p1-next=p4;p3=p2;p2=p4;elsep3=p1;p1=p2;p2=p2-next;卑微如蝼蚁、坚强似大象共享知识分享快乐p1=head;p2=p1-next;printf(n 按年龄排序后的教师信息如下: n);print();void choose1()选择排序方式的函数int i;printf(排序方式 n);printf(1【: 按教师号排序】2:按年龄排序】 n);printf(3:【按月薪排序】 n);printf(

30、请选择:);scanf(%d,&i);while(i3)printf( 选择无效,请重新输入正确选项: );scanf(%d,&i);switch(i)case 1:sort1();break;case 2:sort3();break;case 3:sort2();break;void search1()按教师号查找的函数struct teacher *p;long i;存储用户输入的想要删除的教师号if(head=NULL)printf(n 还未录入过教师信息 n);return;printf( 请输入要查找的教师信息的教师号: );scanf(%ld,&i);for(p=head;p!=N

31、ULL;p=p-next)/p 顺序指向结点与 i 比较,找出有 i 的数据的结点并输出 if(p-num=i)printf(教师号:%ld,姓名:%s,性别:%s,年龄:%d,学历:s,职称:sn,p-nu m,p-n ame,p-sex,p-age,p-edu,p-title);prin tf(月薪:%ld,住址:%s,电话:%sn,p-wage,p-addr,p-telep);return;printf( 已录入的教师信息中不存在该教师号 n);卑微如蝼蚁、坚强似大象共享知识 分享快乐void search2()按姓名查找的函数struct teacher *p;char i20;记录用

32、户输入的想要删除的姓名int j=0;/j 用来记录找到了多少个信息if(head=NULL)printf(n 还未录入过教师信息 n);return;printf( 请输入要查找的信息的教师姓名: );scanf(%s,i);for(p=head;p!=NULL;p=p-next)if(strcmp(p-name,i)=0)/比较 p 指向的结点中的姓名跟 i 的是否一致,是则输出printf(教师号:ld,姓名:%s,性别:%s,年龄:%d,学历:%s,职称:%sn,p-nu m,p-n ame,p-sex,p-age,p-edu,p-title);prin tf( 月薪:%ld,住址:%

33、s,电话:%sn,p-wage,p-addr,p-telep);j=j+1;每输出一个教师的信息则j加一if(j=0) printf( 已录入的教师信息中不存在该姓名的教师 n);void search3()按职称查找的函数,算法与按姓名查找的一样struct teacher *p;char i20;int j=0;if(head=NULL)printf(n 还未录入过教师信息 n);return;printf( 请输入要查找的信息的教师职称: );scanf(%s,i);for(p=head;p!=NULL;p=p-next)if(strcmp(p-title,i)=0)printf(教师号

34、:ld,姓名:%s,性别:%s,年龄:%d,学历:%s,职称:%sn,p-nu m,p-n ame,p-sex,p-age,p-edu,p-title);prin tf(月薪:%Id,住址:%s,电话:%sn,p-wage,p-addr,p-telep);j=j+1;if(j=0) printf( 已录入的教师信息中不存在该职称的教师 n);void search4()按年龄查找的函数,算法与按教师号查找的一样 卑微如蝼蚁、坚强似大象共享知识分享快乐struct teacher *p;int i,j=0;if(head=NULL)printf(n 还未录入过教师信息 n);return;pri

35、ntf( 请输入要查找的信息的教师年龄: ); scanf(%d,&i);for(p=head;p!=NULL;p=p-next) if(p-age=i)printf(教师号:ld,姓名:s,性别:s,年龄:d,学历:s,职称:%sn,p-nu m,p-n ame,p-sex,p-age,p-edu,p-title);prin tf(月薪:%Id,住址:%s,电话:%sn,p-wage,p-addr,p-telep);j=j+1;if(j=0) printf( 已录入的教师信息中不存在该年龄的教师 n);void choose2()选择查找方式的函数int i;printf(查询方式 n);p

36、rintf(1:【按教师号查询】2:【按姓名查询】 n);printf(3:【按职称查询】4:【按年龄查询】 n);printf( 请选择: );scanf(%d,&i);while(i4)printf( 选择无效,请重新输入正确选项: ); scanf(%d,&i);switch(i)case 1:search1();break;case 2:search2();break;case 3:search3();break;case 4:search4();break;void menu()/ 菜单栏函数int i;printf(菜单n);printf(1【: 教师信息录入】2教师信息输出】 n

37、);printf(3【: 教师信息删除】4查询个人信息】 n);printf(5【: 排序】6:退出系统】 n);printf( 请选择 : );scanf(%d,&i);while(i6)printf( 选择无效,请重新输入正确选项: ); scanf(%d,&i);switch(i)case 1:creat();break;case 2:print();break;case 3:del();break;case 4:choose2();break;case 5:choose1();break;case 6:save();menu();void main()/ 主函数key(); menu(

38、);卑微如蝼蚁、坚强似大象四.程序运行效果图4.1登陆界面4.2菜单栏 E 扎彩序 摆爭mi-狷 BeouyjOlO 314L24i*Jjese*请翰入口令I还刁繭人;次厂1234GG 氏迎进,系統n-nlu”1 n谊出 s m 二 2 4 &甲3=4.3录入功能-E:專尽序買逞没计保D旳蜩201二314121临金利占裤-u 嘗心 童f 言人综 侯 長 师询出 mJJ 出息 息人统 仁賈 师询H 敎奋瑕. mu 入除 .mm flr 师第 FLrLL13 5i =1nrCJ m - 1 -陈霁23番38tt34一A- X口SMl4.4浏览功能応 IdUgUF1 疏序逢唱鮒5l0ebu或301朋

39、1*丄斗右金科T黒审入一仁較师的如帀号结重录Ai謹Lt賑p4J岀歐11 伍 折苦很師t32常區42s rr1出白”11 毎J-F 庐白,T, m相垮单3.湾 于E.甲syJ_ VB Tk别山 矍 1些彌自亠自魯1躋序FLFLE-辛啬4.5删除功能4.6查询功能百回u 岀自丄 刃统_1P ln:fl出 馨退 LL无库徹佟学历;哥究生.职称:.只:【排序】誕拓-4tEWB劇ng没州5Deb珂2Q1KB14偽谥利寤寸:醪離1晞5:【张序】6:【卫岀系统】沁怡1SffiAli鼻 产 T 丿 I ; # I v ir * =片承 上1 ri - b w 疔* f严 M 月薪= 4060.I ;广卅耳云区

40、旧g;1333434 菜单4.7排序功能I回ul劈教师号排序后的BW15息如T:2=【按圧龄排序】2:渤序】& .;艰轻厚谀程芟T“ .JeDLSL_ent -二一一一二一出息 息人统 m2 4 t*童了華13 一一 二 石 tan- 4 - 3 PS 皿卅:3.再LI 層愛蒔池 T一 v.T- X一 申帀严:尸白 生w-一低号巾I-土t:灘翩】选择1畫|-9-r S 琴專件審 几他异叽-,=叽 畧现MLU叫祁 JPQT号日宵 牒师師 *愛肖密U.AP-|.1吕6:【退出翳充1救师23幷 . 级讲23钳 一 一哥 -* 5 活諒券 期34麻14JF 4F423X舉34 往52宀九电讣 ss. E32lhl9lK3 不五总结报告5.1 课程设计中遇到的主要问题和解决方法在这

温馨提示

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

最新文档

评论

0/150

提交评论