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

下载本文档

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

文档简介

课程设计任务书计算机科学与技术 专业_年级_班一、 设计题目教师信息管理系统设计二、 主要内容教师信息包括教师号、姓名、性别、年龄、学历、职称、工资、住址、电话等(教师号不重复) 。试设计一教师信息管理系统,使之能提供以下功能:(1) 系统以菜单方式工作(2) 教师信息录入功能一一输入(3) 教师信息删除功能(4)教师信息浏览功能 输出(5) 查询和排序功能: (至少一种查询方式 )——算法按教师号查询按职称查询等三、 具体要求围绕课程设计的目的和意义,基本要求如下:1DD0DDD C语言课程设计》指导书,明确课程设计的目的、意义和要求;2、快速总结 C程序设计语言的精髓,如:函数的概念、函数的设计和函数的调用;3、快速熟悉TuberC或C++3、快速熟悉□□□□□□□□□□;□□□□□□□□□□□□□□□□□,□□□□□□□□□□;□□□□□□□□□□□□□□□□□,□高□□□□□□□□□□4、根据“课程设计题目”,采□□□□□□□□□□□,4、根据“课程设计题目”,采□□□□□□□□□□□,□□系□□□□□□□□□□"□□□□□□□□□□□□□□,□□□□□□□□□□□□□□□□□,□□□□□□□□5叮习并了解良好的程序设计风格。按质、按量、并按时间完成□□□□□□□□6叮供可运行的课程设计系统,参加上机面试答辩。□□□□□□□□□□:□□□□□□□□□,□□□□□□□□□□□□□;□□□□□□□□,□□□□□□□□□□□□□□□□□;□□□□□□□□□□□□□:□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□四、 进度安排□□□□□,□□□□□□□ 3□□□□□□□□□□□,□件□□□□□□□□□□□,□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□:□□□,□□□□□□,□□□□□□□□□□□:□□□各□□□□□□□,□□□□□□ N—S□,同□□□□□□□□;□□□□,□□ N-S□□□□□□□□□□□□,□□□□□□□□□□□□□□□□□□;□□□□,□□□□□□,□□□□□□□□□□□□□□□□,□□□□□□

□□□□□□□□□□□□□□: 35:45:20。五、 □□□□□□□□□1叮程设计的题目、系统的总功能和各子模块的功能;2叮目的设计思想(或算法)简述;3叮要程序的框图(要求用 N—S图);4叮程序代码(要求在关键的位置有注释,从而增加程序的可读性);5叮程设计的总结报告,主要包括以下内容:1)课程设计中遇到的主要问题和解决方法;2)你的创新和得意之处;3)设计中存在的不足及改进的设想;4)本次课程设计的感想和心得体会。□□□□□□□□□□□□□,□□□□□□□□□□□□□,□□□□□□,□□□□□□□□□□□□□六、 总评成绩指导教师系主任指导教师系主任 审核日期 年 月 日

目录□□□□□□□□□□• ••••••••••••••••••••••••••••••••••••••5□□□□□N—S叮•••••••••••••••••••••••••••••••••••••••••7□□□□N—SUU••••••••••••••••••••••••••••••••••••72.2各子函数的 N—SUU••••••••••••••••••••••••••••••••••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□□功□•••••••••••••••••••••••••••••••••••••••••••36TOC\o"1-5"\h\z□□□□□□□□□□□□□□□□□• •••••••••••••••• 37你的创新和得意之处• •••••••••••••••••••••••••••••••• 375.3设计中存在的不足及改进的设想• •••••••••••••••••••••• 375.4本次课程设计的感想和心得体会• •••••••••••••••••••••• 38□□□□□,□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□,□□,□□□□□□□□□□□□□□□:structteacher{longnum;//教师号charname[20];//姓名charsex[5];//性别intage;//年龄charedu[20];//学历chartitle[20];//□称longwage;//工资charaddr[100];//□址chartelep[15];//电话structteacher*next;}*head二NULL;□□□□□□□□□□□□□□□□□□□,□□□□□□□□□数实现。口令为123456。□□□□□□□□ switch语句实现不同功能的选择,不同的功能□□□□□□□□□□录入教师信息通过建立动态单链表来实现。□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□,□□□□□□□□□□□□□□□□□□□□□□□□,并□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□,□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□,□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□,□□□接□□□□□□□□□□□□□□□□□□□□□□□□:□□□□□□□□□□□□□□□□□□□□□□N—S图□□□□□□□□□□□□□,□□□□□□,□□□□□□,□□□□□□□□□□□□□□ 5个。在退出系统时调用了一个保存□□□□□□□□□,□□□□□□□□□□□□□□□□□□,□□□□□□ N—S图。2.2.1□□□□□□□□pl=(structteacher*)malloc(LEN)输入一个教师号p1->num计、教师 一"T\链表头为空?一^Head=p1p3=head当p3->next不为空p3=p3->nextp3->next=p1当教师号不为0输入教师的姓名,性别,年龄,学历,职称,月薪,住址,电话n=n+1第一个^入?___head=p1 p2->next=p1P2=P1p1=(structteacher*)malloc(LEN)输入一个教师号p1->num隹文档

p2->next=NULL□□: pl二(structteacher*)malloc(LEN)中LEN□□□□□□n□□□□□□□□□□□#defineLENsizeof(structteacher))。其中n为全局变n□□□□□□□,用□□□□□□□□□,□□□□□2.2.2教师信息浏览函数p=head"1\^链表头为空?显示“还未录入过信息”输出p所指向的位置中的教师的所有信息p=p->next直到p为空□□□□□□□□,□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□,□□□□□□□□□□□□,□□□□□□N—S图。2.2.3□□□□□□□□□访、链表 一F输出“还未录入过教师信息”隹文档输入要删除教师信息的教师号ipl=head当i!=p1->num退出循环p2=p1p1=p1->nexti!=p1->num?... 输出“已录入的教师信息中没有该教师号”为链表头?^head=p1->nextp2->next=p1->nextn=n-12.2.4教师信息查询的函数□□□□□□□□□□□□□ 4□□□□□□□□,□□□□□□□□□□□□□□,□□□□□□□□□□□□□□□□□查j=0□□□□□□□□□□□□□□□□□□□□□□□□□□□□□,N—S图。iN—S图。i做比较T---链表头为空?一一一…一F输出“还未录入程序”并退出函数输入要查找的教师信息的对应方法的对应数据ip=head当p非空时"T\^p中对应信息不等?输出p所指向的位置的教师的所有信息j=j+1p=p->next^T\j不— F输出“已录入的信息中不存在符合i的信息的教师说明:该 N—S图是对应姓名,教师号,职称,年龄四种查找方式□□□□□□□□□□□□□□,□入 i□□□□□□,□的为p中的教师号,选择其他查找方式时类似。2.2.5教师信息排序函数

□□□□□□□□□□□□□□□□□□□□□□□□, 此处也只□□□□□□□ N—S图。链表头不为空? 一__------一一一一 F输出“还未录入过教师信息”并退出函数"^\第二个 ——nfp1=headp2=head->nexti=1当i小于n时j=0当j小于n-i时、疋1中的对应信息小过p2的?p3=p1为链表头?head=p2 p3->next=p2p1=p2p4=p2->nextp2->next=p1p2=p2->nextp1->next=p4p3=p2p2=p4pl=headp2=pl->next调用教师信息浏览函数说明:p1,p2指向的结点用来比较, p3,p4是用来记录结点的,当选用的排序方式不同, p1,p2用来比较的信息为所选方式的信息。三口源程序代码#include<stdio.h>#include<malloc.h>#inelude<stdlib.h>#include<string.h>#defineLENsizeof(structteacher)//宏定义结构体字节数intn=0;structteacher//定义结构体{longnum;//□□号charname[20];//姓名charsex[5];//性别intage;//年龄charedu[20];//学历chartitle[20];//□称longwage;//工资charaddr[100];//□址chartelep[15];//电话structteacher*next;//指向下一个结点}*head二NULL;voidkey()//口令检查的函数{inti;longa;for(i=0;i<3;i++){printf("请输入口令 (□□□□%d次):\n",3-i);scanf("%ld",&a);if(a==123456)//检查口令是否正确{printf("欢迎进入系统 \n");break;}elseprintf("口令错误\n");}if(i==3)//判断可以输入口令的次数是否用完{printf("可使用的口令输入次数已用完,将自动退出!\n");exit(0);}}voidsave()//把数据存入文件的函数{FILE*fp;inti;charfilename[20];structteacher*p;printf("\n □□□□□□□□□□□□□□□□□□□□□□□□□□ \n");printf(” 1:【是】0:【否】\n请选择:");scanf("%d",&i);while((i!=0)&&(i!=1))//判断输入的选择是否有效{printf("选择无效,请重新输入正确选项: ");scanf("%d",&i);}if(i==1)//判断是否选择了要保存{printf("\n请输入要保存数据的文件名: ");scanf("%s",filename);if((fp=fopen(filename,"wb"))二二NULL){printf("\n无法打开文件 \n");exit(0);for(p二head;p!二NULL;p二p->next)if(fwrite(p,sizeof(structteacher),1,fp)!=1)printf("\n此处数据有误 \n");fclose(fp);}exit(0);}voidread()//从文件读出数据的函数{structteacherteach[299],temp;inti=0;FILE*fp;charfilename[20];printf("\n请输入存有教师信息的文件名: ");scanf("%s",filename);if((fp=fopen(filename,"rb"))二二NULL){printf("\n无法打开文件 \n");exit(0);}fseek(fp,-sizeof(structteacher),2);/*将位置指针从文件□□□□□□□□□□□□□*/fread(&temp,sizeof(structteacher),1,fp);/*□□指□的□□□□□□□□□□□□□□□ temp中*/fseek(fp,0,0);//将位置指针移到文件的开头if(fread(&teach[i],sizeof(structteacher),1,fp)==1)/*□□□□□□□□□□□□□□□*/{printf("\n存有的教师信息如下 :\n");while(teach[i].num!二temp.num)//进行循环读取文件{printf("教师号:%Id,□名:%s,性别:%s,年龄:%d,学历:%s,",teach[i].num,teach[i].name,teach[i].sex,teach[i].age,teach[i].edu);printf("职称:%s\n月薪:%ld,□址 :%s,□话:%s\n",teach[i].title,teach[i].wage,teach[i].addr,teach[i].telep);i=i+1;fread(&teach[i],sizeof(structteacher),1,fp);/*从文件中读入数据存储到结构体变量 teach【i□中*/}//□□□□□□□□□□□□printf("教师号:%ld,□名:%s,性别:%s,年龄:%d,学历:%s,",teach[i].num,teach[i].name,teach[i].sex,teach[i].age,teach[i].edu);printf("职称:%s\n月薪:%ld,□址 :%s,□话:%s\n",teach[i].title,teach[i].wage,teach[i].addr,teach[i].telep);fclose(fp);elseprintf("该文件中无教师信息处}voidcreat()//录入教师信息的函数{structteacher*p1,*p2,*p3;p1=p2=(structteacher*)malloc(LEN);/*申请一个结构体字*/□□□□□□□□□□□□□□□□*/printf("请输入一位教师的教师号(结束录入请输入 0□:");scanf("%ld",&p1->num);if(p1—>num!=0)//判断用户是要结束录入还是要存储信息if(head二二NULL)head二p1;/*判断链表是否为空 ,是则将链TOC\o"1-5"\h\z表头指向 p1*/else//□□□□□□□□□□□□ p1{p3=head;//p3□□□□□□□□□while(p3->next!二NULL)/*若p3□□□□□□□ p3指向□□□□□ */p3=p3->next;p3->next二p1;//将最后一个结点指向 p1while(p1->num!=O)//判断用户是否结束录入功能printf("姓名:");seanf("%s",p1->name);printf("性别:");seanf("%s",p1->sex);printf("年龄:");seanf("%d",&p1->age);printf("学历:");seanf("%s",p1->edu);printf("职称:");seanf("%s",p1->title);printf("月薪:");seanf("%ld",&p1->wage);printf("住址:");seanf("%s",p1->addr);printf("电话:");seanf("%s",p1->telep);n二n+1;//给统计录入的教师数 n加一/*□□□□□□□□□□□□□,□□□□□□□□ p1,□□将p2指向p1*/if(n二=1)head二p1;elsep2->next=p1;p2=p1;//p2□□□□□□□□□□□□□p1二(structteacher*)malloc(LEN);//重新申请空间printf("请输入一位教师的教师号 (□□□□□□□ 0):");seanf("%ld",&p1->num);}p2-〉next二NULL;//将最后一个结点指向空}voidprint()//输出教师信息的函数{structteacher*p;inti;p二head;if(head!二NULL)//判断链表是否为空{printf("\n这%d□□□□□□□ :\n",n);do{printf("教师号:%ld,□名:%s,性别:%s,年龄:%d,学历:%s,职称:%s\n",p->num,p->name,p->sex,p->age,p->edu,p->title);printf("月薪:%ld,□址:%s,电话:%s\n",p->wage,p->addr,p->telep);p=p->next;//将下一个结点的首地址赋给 p}while(p!二NULL);//到链表尾时结束循环}else//链表为空时执行以下部分{printf("\n你此次登录系统还没有录入教师信息,可进行□下□□: \n");printf(" 1:【浏览以前保存在文件中的教师信息】 2:【开始录入教师信息】 \n");printf(" 3:【退出系统】4:【返回菜单】 \n");printf("请选择:");seanf("%d",&i);while((i<1)&&(i>4)){");printf("选择无效,请重新输入正确选项:");seanf("%d",&i);}if(i==1)read();//调用从文件读取数据的函数if(i==2)creat();//调用录入信息的函数if(i==3)exit(O);//退出系统}}voiddel()//删除教师信息的函数structteacher*p1,*p2;longi;if(head二二NULL)//判断链表是否为空{printf("\n还未录入过教师信息 \n");//□□□□□□□return;printf("请输入要删除教师信息的教师号: ");seanf("%ld",&i);pl二head;while(i!二p1—>num)//直到 pl□□□□□□□□□□□□□□{if(p1->next二二NULL)break;//p1□□□□□□□□□□循环p2二p1;//p2用来记录 p1□□□□□□p1=p1->next;//p1□□□□□□□}if(i==p1->num)//□断 p1□□□□□□□□□{if(p仁二head)head二p1->next;/*若p1□□□□□□□□□□向p1□□□□□□ */elsep2->next二p1->next;/*p1非头结点则将 p1□□□□点连接到 p1□□□□□□□□ */printf("\n已删除教师号为 %ld□□□□□ \n”,i);n二nT;//记录教师数的 n□□一}//p1□□□□□□□□□□□□□□□□□□□□□□elseprintf("\n已录入的教师信息中没有教师号为 %ld的\n",i);return;}voidsort1()//按教师号进行排序的函数

structteacher*p1,*p2,*p3,*p4;inti,j;if(head二二NULL){printf("\n还未录入过教师信息 \n");return;}if(head->next!二NULL)//□□□□□□□□□□{//□□□□□□p1=head;//p1□□□□□□□□□□□□□□□□□p2=head->next;//p2记录比较的两个结点中的后面个for(i=1;i<n;i++)//□□ nT趟比较的外循环{for(j=0;j<n—i;j++)//在每一趟中进行 n—i次比较的内循环内循环{if(p1—>num>p2—>num)/*比较相邻两个结点中教师号大小*/师号大小{//当pl□□□□□□□□□□□□□□□□if(p仁二head)head二p2;elsep3—>next二p2;/*p1为头结点时则将头指□□向p2,□□□□p2□□□□□□□ pl□□□□□□ p3□□面 */□□向p4=p2—>next;//p4用来记录 p2□□的□点p2—>next二p1;//p1的结点换到原来 p2□□置plp1—>next二p4;//原来 p2□□□□□□□□

plp3二p2;//p3记录下 p2□□置p2二p4;//p2指向原来位置的下一个结点}p1,else/*p1□□□□□□□□ p2中教师号,则将p1,p2□□□□□□□□□□□□□□□ */{p3二pl;//记录 pl□□□□□□□□□□□□置p1=p2;p2=p2->next;}}p1=head;//p1□□□□□,□□□□□□□□□□□p2=p1->next;//p2指向链表第二个结点}}printf("\n按教师号排序后的教师信息如下: \n");print();//调用教师信息浏览函数}voidsort2()//按月薪排序的函数,算法跟按教师号排序的一样{structteacher*p1,*p2,*p3,*p4;inti,j;if(head二二NULL){printf("\n还未录入过教师信息 \n");return;}if(head->next!二NULL){pl二head;p2二head->next;for(i=1;i<n;i++){for(j=0;j<n-i;j++){if(p1->wage>p2->wage){if(p仁二head)head二p2;elsep3->next=p2;p4=p2->next;p2->next二p1;p1->next=p4;p3=p2;p2=p4;}else{p3=p1;p1=p2;p2=p2->next;}}pl二head;p2=p1->next;}}\n");printf("\n按月薪排序后的教师信息如下:\n");print();}voidsort3()//按年龄排序的函数,算法跟按教师号排序的一样{structteacher*p1,*p2,*p3,*p4;inti,j;if(head二二NULL){printf("\n还未录入过教师信息 \n");return;}if(head->next!二NULL){p1二head;p2二head->next;for(i=1;i<n;i++){for(j=0;j<n-i;j++){if(p1->age>p2->age){if(p仁二head)head二p2;elsep3->next=p2;p4=p2->next;p2->next二p1;p1->next=p4;p3=p2;p2=p4;}else{p3=p1;p1=p2;p2=p2->next;}}p1二head;p2=p1->next;}}\n");printf("\n按年龄排序后的教师信息如下:\n");print();

}voidchooselO//选择排序方式的函数{inti;printf("\n");printf(” 1:【按教师号排序】2:【按年龄排序】 \n");printf(” 3:【按月薪排序】 \n");printf("请选择:");scanf("%d",&i);while((i<1)||(i>3)){printf("选择无效,请重新输入正确选项:scanf("%d",&i);}switch(i){case1:sort1();break;case2:sort3();break;case3:sort2();break;}}voidsearch1()//按教师号查找的函数排序方式");{

排序方式");structteacher*p;longi;//存储用户输入的想要删除的教师号if(head二二NULL){printf("\n还未录入过教师信息 \n");return;}printf("请输入要查找的教师信息的教师号: ");seanf("%ld",&i);for(p=head;p!=NULL;p=p->next)//p□□□□□□□ i□□,□□□ i□□□□□□□□□if(p->num==i){:%d,printf("教师号:%Id,□名:%s,性别:%s:%d,学历:%s,职称:%s\n",p->num,p->name,p->sex,p->age,p->edu,p->title);printf("月薪:%Id,□址 :%s,电话:%s\n",p->wage,p->addr,p->telep);return;}printf("已录入的教师信息中不存在该教师号 \n");}voidsearch2()//按姓名查找的函数{structteacher*p;

chari[20];//记录用户输入的想要删除的姓名intj=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□□□□□,□□□出{:%d,printf("教师号:%ld,□名 :%s,性别:%s:%d,学历:%s,职称:%s\n",p->num,p->name,p->sex,p->age,p->edu,p->title);printf("月薪:%ld,□址 :%s,电话:%s\n",p->wage,p->addr,p->telep);j二j+1;//每输出一个教师的信息则 j□一}if(j==0)printf("已录入的教师信息中不存在该姓名的教师\n");}voidsearch3()//按职称查找的函数,算法与按姓名查找的一样{

structteacher*p;chari[20];intj=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)==O){printf("教师号:%printf("教师号:%ld,□名:%s,性别:%s,年龄:%d,学历:%s,职称:%s\n",p->num,p->name,p->sex,p->age,p->edu,p->title);printf("月薪:%ld,□址 :%s,电话:%s\n",p->wage,p->addr,p->telep);j=j+1;}if(j==0)printf("已录入的教师信息中不存在该职称的教师\n");}voidsearch4()//按年龄查找的函数,算法与按教师号查找的一{structteacher*p;inti,j=O;if(head二二NULL){printf("\n还未录入过教师信息 \n");return;}printf("请输入要查找的信息的教师年龄: ");seanf("%d",&i);for(p=head;p!=NULL;p=p->next)if(p->age==i){printf("教师号:%ld,□名 :%s,性别:%s,年龄:%d,学历:%s,职称:%s\n",p->num,p->name,p->sex,p->age,p->edu,p->title);printf("月薪:%ld,□址 :%s,电话:%s\n",p->wage,p->addr,p->telep);j=j+1;}if(j==0)printf("已录入的教师信息中不存在该年龄的教师\n");}voidchoose2()//选择查找方式的函数{

inti;printf("\n");printf(” 1:【按教师号查询】2:【按姓名查询】 \n");printf(” 3:【按职称查询】4:【按年龄查询】 \n");printf("请选择:");seanf("%d",&i);while((i<1)||(i>4)){printf("选择无效,请重新输入正确选项:scanf("%d",&i);查询方式");}switch(i)查询方式");{case1:search1();break;case2:search2();break;case3:search3();break;case4:search4();break;}}voidmenu()//菜单栏函数inti;

printf("\n");printf("2:printf("\n");printf("2:【教师信息输出】 \n");printf("4:【查询个人信息】 \n");printf("6:【退出系统】 \n");printf("请选择:");seanf("%d",&i);菜单1:【教师信息录入】3:【教师信息删除】5:【排序】while((i<1)||(i>6)){printf("选择无效,请重新输入正确选项: ");scanf("%d",&i);}switch(i){case1:creat();break;case2:print();break;case3:del();break;case4:choose2();break;case5:choose1();break;case6:save();}menu();}voidmain()//主函数{key();menu();}四口程序运行效果图□□□□I—皿tow4.3录入功能1:【毂师信息录入】3:燼师彳言息删除】5:【雜序】:陈全:男:23方:務盍纽教师3000佛山市禅城区江湾一

温馨提示

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

评论

0/150

提交评论