C++学生成绩管理系统代码_第1页
C++学生成绩管理系统代码_第2页
C++学生成绩管理系统代码_第3页
C++学生成绩管理系统代码_第4页
C++学生成绩管理系统代码_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

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

文档简介

1、代码:/*学生成绩管理系统* 类: Student Score Manage* 可保存学科:语文 数学 英语*时间段:大一至大四*说明:该程序针对学生数较少的情况,假如面对上千上万的学生数,应该再将 其中的存储结构进行改变,*分别分层次存储,例如大一至大四四个链表表头,在每一个链表中又根据不同分类依据细分,*例如根据学院、专业等,这样的改变将大大有利于程序进行的寻找、输出、排序等涉及链表的操作,*当然相应代码也要稍作改变*/#include<iostream>#include<string>#include<fstream>#include<sstre

2、am>#include<iomanip>#include<conio.h>#include<windows.h>#include<vector> using namespace std;#define CONOBJ 3 /3 科科目#define YEARS 4 /4 个学年#define SET 4 /4 个设置要求class Scorepublic:int scoreCONOBJ; /chinese,math,english 三科目分别对应 order0 、 order1 、 order2, 每个学期两次考试,分为期中和期末考试int

3、orderCONOBJ; /MAX 科学科排名int ConOrder;/ 总排名Score *next;/定义在学生类当中Score()next=NULL;int i;for(i=0;i<CONOBJ;i+) scorei=0; orderi=0;ConOrder=0;/无参构造函数Score(int *sc)next=NULL;int i;for(i=0;i<CONOBJ;i+) scorei=*sc; orderi=0; sc+; ConOrder=0;/只有成绩的构造函数Score(int *sc,int*or,int Con) next=NULL;int j;for(j=

4、0;j<CONOBJ;j+) scorej=*sc; orderj=*or; sc+; or+; ConOrder=Con;/含全部参数的构造函数int ReturnConScore()/返回总分数return score0+score1+score2;/= class Student/*Student 类中包含 Score 类 *用来存储众多的成绩,每个学期两次成绩, 每学年两个学期 */Score *sco;string name;string pro; / 专业int clas;int grade;string num;char sex;Student* next;public:/

5、* 几个不同参数的 Student 构造函数的重载, *分别对应不同形式的构造方式*/Student(string iname):name(iname),next(NULL) sco=NULL;cout<<"tttt 成功添加学生 "<<name<<" n"/1.单参数时的构造函数Student(string iname="No name",string ipro="none",int iclass=0,int igrade=0,string inum="0"

6、,char isex='n'):name(iname),num(inum),sex(isex),next(NULL),pro(ipro),clas(iclass),grade(i grade)sco=NULL;cout<<"tttt 成功添加学生 "<<name<<" n" return;/2.用于添加无输入成绩的构造函数Student(string iname,string ipro,int iclas,int igrade,string inum,char isex,int *score):name

7、(iname),pro(ipro),clas(iclas),grade(igrade),num(inum),sex(isex),next(N ULL)sco=new Score(score); cout<<"tttt 成功添加学生 "<<name<<" n"/3.用于添加有成绩的构造函数Student(string iname,string ipro,int iclas,int igrade,string inum,char isex,int *score,int conor,int *order):name(inam

8、e),pro(ipro),clas(iclas),grade(igrade),num(inum),sex(isex),next(N ULL)sco=new Score(score,order,conor);/4.用于从文件读入时候的构造函数int CountOfScore();/统计已经存储的成绩数量,每个学期两次考试,每次考试算作一次成绩录入 成绩录入总计 = 4*igradefriend class Manage;/=class Manageint setSET;Student* stu;/*记录是否执行了修改学生信息操作,等于'n'表示未修改信息或者修改完了 但已经保存,

9、等于y表示已经修改并且还未保存*/char judgeOfAdd;public:Manage()stu=NULL;/*for(int i=0;i<SET;i+) seti=1;*/judgeOfAdd='n'Start();Manage()/删除所有记录,释放空间Student* p=stu;while(p) p=p->next; delete p;stu=NULL;Student* ReturnStu()return stu;/添加void Add();/添加学生void AddScore(Student *istudent); / 添加成绩/浏览int isEm

10、pty();int infoPass(string inum,string iname,char isex,int igrade,int iclas); void SkimAll();void SkimClas();void SkimPro();void SpecSkim();/ 指定的其他浏览方式void SkimByScore();void SkimByTerms();void SkimByPlace();void SkimByTest();void SkimByGrade(int igrade);void Find(string T); / 查找void PrintAllScore(Sc

11、ore *q);/ 打印成绩,本程序用来打印第二次开始的考试 成绩void InitScore();/未给出成绩的学生进行 0 赋值void Delete();/ 删除void Edit(string Y); / 编辑void EditScore(Student *istu);void OrderConscore(); / 按总成绩排序void OrderObject(); void Compare(); void Save(); int Read(); string OfProfe(); int WINAPI/排名次/比较 /保存 /读取/选择学院专业WinMain(HINSTANCEhIn

12、st,HINSTANCEhPrevInstance,LPSTR lpszCmdParam,int nCmdShow);/显示欢迎对话框int countSpecStudent(int igrade); / 返回指定年级的学生数int countConStudent();/返回总学生数/默认设置void DefaultSetting();/ 进行默认设置void ReadSet();/ 读取默认设置void SaveSet();/保存默认设置int* ReturnSet();char ReturnjudgeOfadd();void JudgeOfSave(); /判断是否保存已修改的信息void

13、 Start();/ 类内部开始运行的操作void Interface();/ 用户使用界面;/= /Student 名空间中的成员函数的函数定义 int Student:CountOfScore()Score *p=sco;int i; for(i=0;p;p=p->next,i+);return i;/ /Manage 名空间中的成员函数的函数定义 int* Manage:ReturnSet()return set;/ char Manage:ReturnjudgeOfadd()return judgeOfAdd;/int Manage:countSpecStudent(int ig

14、rade) / 返回指定年级的学生数 Student *p=stu;int count=0;for(;p!=NULL;p=p->next)if(p->grade=igrade)count+;return count;/int Manage:countConStudent() /返回总学生数int count=0;for(int i=0;i<CONOBJ;i+)count+=countSpecStudent(i+1);return count;void Manage:AddScore(Student *istudent) system("CLS");/*if

15、(!(istudent->CountOfScore()<istudent->grade*4) / 成绩已经输入 满了char judge;cout<<" 成绩已经输入完整,不需要再添加 修改 Y/ 返回 N:" cin>>judge;if(!(judge='Y'|judge='y')return ;*/int i,judge_grade,judge_term;char flag='y',judge_input='y'Score *temp; for(judge_grad

16、e=1;judge_grade<=istudent->grade;judge_grade+) for(judge_term=1;judge_term<=4;judge_term+)/由用户选择是否继续输入printf("n*是否输入大%d第%d次考试成绩是(y)/否(n)/返回(r) :",judge_grade,judge_term);cin>>judge_input;if(judge_input='y'|judge_input='Y')printf("n 请 输 入 大 %d 第 %d 次 考 试

17、成 绩 : n",judge_grade,judge_term);/abs(istudent->CountOfScore()-(istudent->grade-1)*4+1)/输入成绩int scoreCONOBJ; for(i=0;i<CONOBJ;i+) if(i=0)cout<<" 输入语文成绩: "else if(i=1)cout<<" 输入数学成绩: "else cout<<" 输入英语成绩: " cin>>scorei;temp=new Score

18、(score);else if(judge_input='n'|judge_input='N')temp=new Score(); /不输入成绩的学生会自动赋分数为 0 elsereturn ;/ 返回/做连接操作 if(istudent->sco=NULL) istudent->sco=temp;elseScore *p=istudent->sco; while(p->next!=NULL) p=p->next;p->next=temp; temp->next=NULL;/void Manage:Compare()/比

19、较/void Manage:OrderObject()/ 各科目成绩排名次,赋值给 score 类中的orderif(!isEmpty()return ;Student *p,*pp;Score *qp,*qpp;int score,ch,ma,eng,igrade=1,times,count=0,c1=0,c2=0,c3=0; while(igrade<=YEARS)if(countSpecStudent(igrade)=0)igrade+;continue;p=stu;times=1;while(times <= igrade*4) p=stu;c1+;/核心部分 /while

20、(p!=NULL) /p 的循环是保证每个学生都进行成绩排序 count+;if(p->grade=igrade)qp=p->sco; /qp 指向该次所要排成绩的学生的成绩开头 处for(int j=0;j<times-1;j+) qp=qp->next; /qpp=qpp->next;/* 初始化及更新操作 */ qp->ConOrder=countSpecStudent(igrade);/ 不同年级学生数for(int i=0;i<CONOBJ;i+) qp->orderi=qp->ConOrder;/减少函数而调用采用的方法scor

21、e=qp->ReturnConScore();ch=qp->score0;ma=qp->score1;eng=qp->score2;pp=stu;/每一次都从头开始进行比较while(pp!=NULL)c3+;if(pp->grade=igrade && pp->num!=p->num) qpp=pp->sco;for(int j=0;j<times-1;j+)qpp=qpp->next;if(qpp->ReturnConScore() <= score) qp->ConOrder-;if(qpp-&

22、gt;score0 <= ch)qp->order0-;if(qpp->score1 <= ma)qp->order1-;if(qpp->score2 <= eng)qp->order2-; pp=pp->next;/cout<<p->name<<" p=p->next;times+;igrade+;/int WINAPI Manage:WinMain(HINSTANCE hPrevInstance,LPSTR lpszCmdParam,int nCmdShow) MessageBox(NULL

23、,/count," 您好,欢迎使用! "," 学生成绩管理系统 ",hInst,HINSTANCEMB_OK | MB_ICONINFORMATION );return 0;/string Manage:OfProfe()/选择学院专业int kh;string i; cout<<"ntt cout<<"tt cout<<"tt cout<<"tt cout<<"tt cout<<"tt cout<<"

24、tt cout<<"tt cout<<"tt cout<<"tt cout<<"tt cout<<"tt cout<<"ttn" n"n"n"n"n"n"n"n"n"n"n"n"docout<<" tt 请输入相应学院代号:cin>>kh;while(!(kh>=0&&kh<

25、6);cout<<"t*n"switch (kh)case 1:cout<<"t*11.数字媒体技术 n"cout<<"t*12.土木工程 n"cout<<"t*13.建筑学 n"cout<<"t*14.化学工程工艺 n"break;case 2:cout<<"t*21.化学系 n"cout<<"t*22.地理工程 n"cout<<"t*23.环境工程

26、 n"break;case 3:cout<<"t*31.临床医学 n"cout<<"t*32.麻醉学 n"cout<<"t*33.影像学 n"break;case 4:cout<<"t*41.院农业机械 n"cout<<"t*42.水产养殖 n"break;case 5:cout<<"t*51.经济学 n"cout<<"t*52.国际经济贸易 n"cout<

27、<"t*I53.金融学 n"break;int ch;cout<<"t*0.返回 n"cout<<"t*n"docout<<"t 请输入相应专业代号:cin>>ch;if(ch=0) i=OfProfe(); return i; while(!(ch%10>0&&ch%10<4&&ch!=43&&ch/10=kh)|(ch=14&&ch/10 =kh);cout<<"t*n&

28、quot;switch (ch)case 11:i=" 数字媒体技术 "break;case 12:i=" 土木工程"break;case 13:i="建筑学"break;case 14:i="化学工程工艺"break;case 21:i="化学系"break;case 22:i="地理工程"break;case 23:i="环境工程"break;case 31:i="临床医学"break;case 32:i="麻醉学&quo

29、t;break;case 33:i="影像学"break;case 41:i="农业机械"break;case 42 : i ="水产养殖 "break;case 51:i="经济学"break;case 52:i="国际经济贸易"break;case 53:i="金融学"break;default:cout<<"t 输入错误。 " int judge=1;cout<<"t 已 经 选 择""<&

30、lt;i<<" 专 业 "*nt 是(1)cout<<"nt 请选择: "否(O)nt*是 否 确 定 ? nt*"cin>>judge; while(!judge) i=OfProfe();return i;/ int Manage:infoPass(string inum,string iname,char isex,int igrade,int iclas)int value=atoi(inum.c_str(),legal=1,count=1;cout<<"nn 信息输入合法性:

31、n"if(!(igrade>=1 && igrade<=4)cout<<count<<": 年级输入不合法,请输入大一 大四 n"legal=O;count+;else if(!(value >= igrade*1OOOO && value <= igrade*1OOOO+9999) coutvvcou ntvv":学号输入不正确大一(1000019999) /大 ( 2OOOO29999)n"legal=0;count+;if(!(iclas>=1 &

32、;& iclas<=99)cout<<count<<": 班级输入不合法,请输入 199n"legal=0;count+;if(isex!='w' && isex!='m')coutvvcount<<":请输入正确性别,男生-m,女生-wn"legal=0;count+;if(iname.length()>2) cout<<count<<": 姓名输入不宜过长 n" legal=0;if(count=1) c

33、out<<"ttt 输入合法 nn"return legal;/void Manage:Add() system("CLS"); Student *p=stu,*q=NULL,*save=NULL; string inum,iname,ipro; int igrade,iclas,count=0; char flag,isex,see='y' if(stu=NULL)cout<<"ttt>>* 还没有学生信息 !*<<"while(see='y') / 备

34、注:循环,判断是否多次输入 count+;cout<<endl<<count<<".n"<<" 请输入学号: " cin>>inum;p=stu;while(p) /寻找是否已经存在该学生 if(p->num=inum) Find(inum);cout<<"n 提示:该学生已经存在 !是否修改信息? (Y/N):" cin>>flag;if(flag='Y'|flag='y') system("CLS&q

35、uot;);cout«"ttt学生及成绩录入 n"Edit(inum);break;save=p; p=p->next;if(p=NULL)/说明没有以上学号的学生, p 移动到了链表尽头cout<<" 请输入姓名:"cin>>iname;cout«"请输入性别(男-m/女-w):"cin>>isex;cout<<" 请输入年级 (大一 :1) : "cin>>igrade;cout<<" 请输入班级: &q

36、uot;cin>>iclas;if(!(infoPass(inum,iname,isex,igrade,iclas) cout<<"nttt* 是否重新输入 Y/N" char judgeOfIn; cin>>judgeOfIn;if(judgeOfIn='y'|judgeOfIn='Y')Add();elsereturn ;cout<<"n"cout<<" 请选择学院及专业: "ipro=OfProfe();cout<<"

37、;t 已选择: "<<ipro<<"n"cout<<"n"q=new Student(iname,ipro,iclas,igrade,inum,isex); cout<<"ttt *>> 去输入成绩? (Y/N):" while(getchar()!='n');/cin.clear();cin>>flag;if(flag='Y'|flag='y')AddScore(q); system("CLS&

38、quot;);judgeOfAdd='y'if(stu)save->next=q;q->next=NULL;elsestu=q;stu->next=NULL;cout<<"tttt 是否继续添加? (Y/N):"cin>>see;InitScore();/OrderConscore();OrderObject(); cout<<"tttt 按任意键返回 >"getch();/int Manage:isEmpty() char flag; Student *p=stu; if(!s

39、tu) cout<<"nttt 提示:信息为空 !去输入吗? (Y/N):" cin>>flag;if(flag='Y'|flag='y')Add(); system("CLS"); return 1;elsereturn 0;/空elsereturn 1;/ 非空/void Manage:PrintAllScore(Score *q) / 打印从大一第二次开始的所有成 绩while(q!=NULL) /当 学生成绩为空 时候 ,即 q=NULL, 所以此时q!=NULL 的判断在 q->ne

40、xt!=NULL 的前面,保证了程序的准确性coutvv" IlliI"<<setw(1)<<q->score0<<"/"<<q->order0<<" "<<setw(1)<<q->score1<<"/"<<q->order1<<" "<<setw(1)<<q->score2<<"/"<

41、<q->order2<<" l "cout<<setw(3)<<q->ReturnConScore()/3.0<<""<<setw(2)<<q->ReturnConScore()<<" l "<<setw(3)<<q->ConOrder<<" "<<"n"q=q->next;/void Manage:SkimClas() /班级

42、if(isEmpty()Student *p=stu;int k;cout<<" 你可以选择以下班级: dok=p->clas;cout<<k<<"dop=p->next;while(p!=NULL&&k=p->clas); while(p!=NULL); cout<<endl<<" 请输入班级: " cin>>k;/两个不能对调p=stu;while(p!=NULL&&k!=p->clas)p=p->next; if(p

43、=NULL) cout<<" 输入错误,无该班级。 n"cout<<"tttt*n"<<"tttt按任意键返回或继"<<"ntttt*".getch(); return ;cout«" n" |_| _cout<<" |基本信息|成绩/单科排名1n"cout«" |n"cout<<" |姓名 |学号 |年 /班 |专业 |语文|数学|英语|平均 |总分|名

44、次|n"cout«" | | | |-1| -1|n"p=stu;while(p!=NULL)while(p!=NULL&&p->clas!=k) p=p->next;if(p!=NULL)cout.left;cout<<" |"<<setw(4)<<p->name<<""<<setw(5)<<p->num<<"|"<<setw(3)<<p->

45、grade<<"/"<<p->clas<<""<<setw(13)<<p->pro<<""<<setw(1)<<p->sco->score0<<"/"<<p->sco->order0<<" "<<setw(1)<<p->sco->score1<<"/"<&l

46、t;p->sco->order1<<""<<setw(1)<<p->sco->score2<<"/"<<p->sco->order2<<"| "cout.precision(2);cout<<setw(3)<<p->sco->ReturnConScore()/3.0<<" "<<setw(2)<<p->sco->ReturnC

47、onScore()<<""vvsetw(3)<<p->sco->ConOrdervv"| "<<"n"PrintAllScore(p->sco->next);elsebreak;p=p->next;cout«"n"cout<<"tttt*n"<<"tttt按任意键返回 或继续"<<"ntttt*、'.getch();/void Manage:Ski

48、mPro()/专业if(isEmpty()Student *p=stu; string i; i=OfProfe();while(p!=NULL&&i!=p->pro)p=NULL 就不会进行后面一个判断了/这两个顺 序不能对调 一旦 判断 否则会出错p=p->next;if(p=NULL)cout<<"tttt 该专业暂时无学生就读n"cout<<"tttt*n"<<"tttt按任意键返回或继"<<"ntttt*".getch(); re

49、turn ;system("CLS");cout«" n" |_| _cout<<" |基本信息|成绩/单科排名|n"cout«" |n"cout<<" |姓名 |学号 |年 /班 |专业 |语文|数学|英语|平均 |总分|名次|n"cout«" | | | |-1| -1|n"while(p!=NULL)while(p!=NULL&&p->pro!=i) p=p->next;if(p!=NUL

50、L)cout.left;cout«"I"<<setw(4)vvp->n ame<<"|"<<setw(5)vvp->num <<"I "<<setw(3)<<p->grade<<"/"<<p->clas<<"|"<<setw(13)<<p->pro<<" "<<setw(1)<

51、<p->sco->score0<<"/"<<p->sco->order0<<" "<<setw(1)<<p->sco->score1<<"/"<<p->sco->order1<<" "<<setw(1)<<p->sco->score2<<"/"<<p->sco->order2&

52、lt;<" I "cout.precision(2);cout<<setw(3)<<p->sco->ReturnConScore()/3.0<<""<<setw(2)<<p->sco->ReturnConScore()<<" "<<setw(3)<<p->sco->ConOrder<<" I "<<"n"PrintAllScore(p-

53、>sco->next);elsebreak;p=p->next;cout«"n"cout<<"tttt*n"<<"tttt按任意键返回 或继续"<<"ntttt*"getch();/void Manage:SkimAll()/全部int igrade=1;Student *p;char judge;Score *q;if(!isEmpty()return ;cout<<"tt 是:显示详细信息 ,否:显示最近一次考试成绩【 y/n

54、】:"cin>>judge;while(igrade<YEARS+1)p=stu; cout<<"n 大"v<igrade<v":n"cout«" n" I_| _cout<<" I基本信息I成绩 /单科排名I n"cout«" | |n"cout<<" | 姓名 |英语|平均 |总分|名次|学号1年/班 |n"专业|语文|数学cout«" |-1| -1 -1

55、| |n"| |while(p!=NULL)q=p->sco;if(p->grade=igrade) /打印姓名、学号、年级班级、专业 cout.left;cout<<" |"<<setw(4)<<p->name<<""<<setw(5)<<p->num<<"|"<<setw(3)<<p->grade<<"/"<<p->clas<&l

56、t;""<<setw(13)<<p->pro;/判断是否有第一次考试成绩,并输出不同结果 if(p->sco=NULL)cout<<" |"<<setw(1)<<"-"<<"/"<<"-"<<""<<setw(1)<<"-"<<"/"<<"-"<<&q

57、uot;| "<<setw(1)<<"-"<<"/"<<"-"<<"| "cout.precision(2);cout<<setw(3)<<"-"<<"| "<<setw(2)<<"-"<<""<<setw(3)<<"-"<<"|

58、"<<"n"elsecout<<""<<setw(1)<<p->sco->score0<<"/"<<p->sco->order0<<""<<setw(1)<<p->sco->score1<<"/"<<p->sco->order1<<""<<setw(1)<&l

59、t;p->sco->score2<<"/"<<p->sco->order2<<"| "cout.precision(2); cout<<setw(3)<<p->sco->ReturnConScore()/3.0<<""<<setw(2)<<p->sco->ReturnConScore()<<""<<setw(3)<<p->sco-&

60、gt;ConOrder<<" | "<<"n"/判断是否还有成绩,有的话继续输出 if(judge='y'|judge='Y') && q!=NULL && q->next!=NULL) /当 学生 成 绩为 空时 候 ,即 q=NULL, 所 以此 时 q!=NULL 的判 断在 q->next!=NULL 的前面,保证了程序的准确性PrintAllScore(q->next); p=p->next;cout<<"n&q

61、uot;igrade+;cout<<"tttt*n"<<"tttt按任意键返回或继续"<<"ntttt*、'.getch();/void Manage:SkimByScore() int begin,end; Student *p=stu; do cout<<" 请输入起始分数 (010): " cin>>begin;while(!(begin>=0&&begin<=10);docout<<" 请输入终结分数

62、段 (010):" cin>>end;while(!(end>=0&&end<=10);char c,m,e;cout<<" 是否显示语文 (Y.y/N.n):" cin>>c;cout<<" 是否显示数学 (Y.y/N.n):" cin>>m;cout<<" 是否显示英语 (Y.y/N.n):" cin>>e;if(c='Y'|c='y'|m='Y'|m='

63、y'|e='Y'|e='y') cout«" n" l_l coutvv" l基本信息I分数段/成绩/排名I n"cout<<" ll_l n"cout«" |I 姓名| 学号|年/班|专业|"<<setw(2)<<begin<<setw(1)<<""<<end<<"l n"cout<<" |n"if(

64、c='Y'|c='y') while(p!=NULL) if(p->sco->score0>=begin&&p->sco->score0<=end) cout.left;cout«" | 语文"<<"I "<<setw(4)vvp->name<<" | "<<setw(5)vvp->num <<"|"<<setw(3)<<p-&

65、gt;grade<<"/"<<p->clas<<"|"<<setw(13)<<p->pro<<" "<<setw(13)<<p->sco->score0<<"/"<<p->sco->order0<<"| n"p=p->next;cout«" | I n" if(m='Y'|m=&

66、#39;y')p=stu;while(p!=NULL)if(p->sco->score1>=begin&&p->sco->score1<=end)cout.left;cout<<" |数 学 "<<" |"<<setw(4)<<p->name<<""<<setw(5)<<p->num<<"|"<<setw(3)<<p->

67、grade<<"/"<<p->clas<<""<<setw(13)<<p->pro<<" "<<setw(13)<<p->sco->score1<<"/"<<p->sco->order1<<"| n"p=p->next;cout«" | I n" if(e='Y'|e='

68、y')p=stu;while(p!=NULL)if(p->sco->score2>=begin&&p->sco->score2<=end)cout.left;cout<<" |英 语 "<<" |"<<setw(4)<<p->name<<""<<setw(5)<<p->num<<"|"<<setw(3)<<p->grad

69、e<<"/"<<p->clas<<""<<setw(13)<<p->pro<<" "<<setw(13)<<p->sco->score2<<"/"<<p->sco->order2<<"| n"p=p->next;cout«" | |n"/void Manage:SkimByTerms()/显示各个学期的成绩/void Manage:SkimByPlace()/按排名范围显示/void Manage:SkimByTest()int igrade=1,times=1,i;string judgeOfTest="middleTest"Student *p;Score *q;if(!isEmpty()return ;while(igrade<YEARS) if(countSpecStudent(igrade)=0) cout<&l

温馨提示

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

评论

0/150

提交评论