一、实验内容

实验设计的题目、内容

研究生考试课程为4门,其中数学、外语、政治为统一命题,而专业基础课则根据不同的专业由招生学校自行命题。国家对初试录取分数有总分要求(如某一年要求4门课总分应达到310分),另外还有对每门课的最低分数要求(如总分为100的试卷最低应达到40分,总分为150的试卷最低应达到65分)

二、运行环境

研究生初试录取系统(LMS)在Devc++平台下开发,操作系统:Windows 10。

硬件环境:

处理器:Intel(R) Core(TM) i5-8265M CPU @ 1.60GHz  1.80GHz

内存:8.00GB

系统类型:64位操作系统

三、实验课题分析(主要的模块功能、流程图)

3.1需求分析(具体实现要求)

编程统计初试合格的人数,并按总分由高到低的顺序输出合格考生的信息。具体功能:(1)程序运行时首先要求输入:考生姓名,准考证号,报考专业,是否应届生,4门课(政治、数学、外语、专业基础课)成绩。同时,这些原始数据应保存到一个文件中。(2)然后输入:录取的总分要求,各课程的最低分数要求。(3)输出要求:过线考生的姓名,准考证号,报考专业,是否应届生,4门课程(政治、数学、外语、专业基础课)成绩及总分,这些信息应存放到另一个文件中。(4)测试数据。

3.2 研究生初试录取系统的主要功能

3.2.1研究生初试录取系统的主要功能为:

  1. 查询学生信息 2.增加学生信息

3.修改学生信息 4.删除学生信息

5.输入过线标准并输出合格学生 6.查询删改记录

下图为该系统的功能分解

系统各模块的功能具体描述为:

1、查询操作

输入你想查询的学生的学号(学号唯一并且只能通过学号查找)

系统依次输出该学生的姓名、学号、专业、是否应届生、政治成绩、数学成绩、英语成绩、专业成绩及总分。按“1”返回主菜单,按“2”退出系统。

2、添加操作

可以先输入添加的人数,再输入这些学生的具体信息(界面会给出各个信息的输入顺序,注意一定要按顺序输入),系统把这些数据写入到一个文本中。最后返回菜单。

3、修改操作

可以根据输入的学生学号先查询出该学生的原本信息,再按顺序输入修改后的信息(注意学号唯一且不可修改)系统在把新数据读入到文本中。若在这过程中,学号前后不一致的话,系统自动提醒,并要重新输入。

4、删除学生信息操作

先输入你要删除学生的学号,系统从文本中读到该学号的学生信息,并将其删除,再重新更新文本。同时,将删除的学生信息存到另一个文本中。

5、输入过线标准并且输出过线学生

按科成绩及总分的过线标准,系统从存储学生信息的文件中读取信息,并进行判断,当学号相同时,将该学生的信息存入到另一个文本中,同时排序输出结果。

6、查询删除信息

 读取存储删除的学生信息的文本,界面输出结果。

3.3 类的构造

系统涉及对象有两个基本类:学生类和过线要求类。

1)学生类,包含s_name学生姓名、s_id学号、s_major专业、isfresh是否为应届生、scoreMath 数学成绩、scoreEnglish英语成绩、scorePolitic政治成绩、scoreMajor专业课成绩、total总分。

类的声明及定义如下:

 #ifndef STUDENT_H
#define STUDENT_H
#include <string>
#include <iostream>
#include <iomanip>
using std::string;using std::cin;using std::setw;class student{
private:string s_name;string s_id;string s_major;string isfresh;int scoreMath;int scoreEnglish;int scorePolitic;int scoreMajor;int total ;
public:
student( student &s){//构造函数
setname(s.getname());
setid(s.getid());
setMajor(s.getMajor());
setisf(s.getisf() );
setMath(s.getMath());
setEnglish(s.getEnglish());
setPolitic(s.getPolitic());
setmajor(s.getmajor());
settotal();
}student(){}student(const string& na,const string &id,const string& maj,const string& isf,const int& politic,const int& math,const int& english,const int& major);void  setMath(int x){scoreMath=x;}//设置或修改数学成绩void  setEnglish(int x ){scoreEnglish=x;}//设置或修改英语成绩void  setPolitic(int x){scorePolitic=x;}//设置或修改政治成绩void  setMajor(int x){ scoreMajor=x;}//设置或修改专业成绩void setname(string na){s_name=na;}//设置或修改学生姓名void setid(string id){s_id=id; }//设置学生学号
void setmajor(string maj){ s_major=maj;}//设置或修改学生专业void setisf(string isf){isfresh=isf;//设置或修改学生是否为应届生}void settotal(){total=scoreMath+scorePolitic+scoreMajor+scoreEnglish;}string getname(){//获取姓名return s_name;} string getid(){//获取学号return s_id;}string getmajor(){//获取专业return s_major;}string getisf(){//获取是否为应届生return isfresh;}int getMath(){return scoreMath;//获取数学成绩}int getEnglish(){return scoreEnglish; //获取英语成绩} int getMajor(){return scoreMajor;//获取专业成绩}int getPolitic(){return scorePolitic;//获取政治成绩}int getsumscore(){return scoreMath+scoreEnglish+scoreMajor+scorePolitic; } //获取总分成绩
bool ispassed(const int& po, const int& ma,const int& en, const int& maj,const int& tot);//判断是否过线void setall(const string& na,const string &id,const string& maj,const string& isf,const int& politic,const int& math,const int& english,const int& major);friend std::istream& operator>> (std::istream &, student& );//输入函数friend std::ostream& operator<< (std::ostream &, student& );//输出函数
};
#endif // STUDENT_H

2)过线要求类的编写

require中含五个数据,分别是po政治成绩、ma数学成绩、en英语成绩、maj专业成绩、tot总分成绩。

class require{
private:
int po;
int ma;
int en;
int maj;
int tot;
public:
require(int p,int m,int e,int n,int t):po(p),ma(m),en(e),maj(n),tot(t){}//构造函数
require(){
}
int getpo(){//获取政治成绩过线要求
return po;
}
int getma(){//获取数学成绩过线要求
return ma;}
int geten(){//获取英语成绩过线要求
return en ;
}
int getmaj(){//获取专业成绩过线要求
return maj;
}
int gettot(){//获取总分成绩过线要求
return tot;
}
friend  std::istream& operator >> (std::istream &input, require& a)
{    input >> a.po >> a.ma  >> a.en  >> a.maj >> a.tot;
return input;}
}; 

制定过线要求及按总分从高到低输出过线学生信息的流程图如下 (涉及到两个类的操作)

四、实验过程中各个功能的调试

各功能实现页面

4.1查询函数chaxun()

stut (存储学生信息)

菜单界面如下

接下来输入该学生的学号

输出该学生的完整信息 按“1”返回菜单。

  4.2

add()函数增加学生信息

接下里输入该学生的信息

图  写入具体学生信息的界面

图  存储学生信息的文本发生变化

4.3修改  change()函数 

依次输入修改后的数据

stut.txt截图

 4.4删除函数deletes()

 4.5制定过线标准并输出过线学生

输入这五个要求

4.6删除数据的截图

五、实验遇到的问题及解决方法

系统在调试测试过程中遇到若干问题,不过经过仔细反复的检查已经消除各种bug。

遇到的问题及解决方法如下:

问题1:文件读取失败

5.1.1

问题具体描述:在查询及涉及到读文本的工作时,只能读入第一个数据,所以任何操作都只有第一行有效,查询时只有查第一个才能正常输出,其他系统都提示“该学生找不到”。

5.1.2

问题产生的具体原因:在输出一个学生类的所有信息时,本意是想让只要输入四门课的成绩,总成绩自动计算,不需要手动输入,所以我以前写的类的输入输出函数如下图

但在读写操作时,系统默认这两个类型是不匹配的,因此,读完第一行,系统就会检测不到匹配的类型,便不会继续读下去,这样就导致了这个错误结果。

5.1.3 解决方法

检重新改写类的输入函数,使总分从自动计算,改为手动输入。这样两个类型就匹配了,但是缺点是无法判断总分的正确性,手动输入错误率较高。

图  修改后的输入函数

 问题2文件读取错误

5.2.1问题具体描述

读取文件时最后一行总是会多读一次,输出了两条一模一样的信息,使系统部分功能不能正常运行。

5.2.2 问题产生具体原因

存储的时候,文件最后是换行,仅有eof函数来判断是不行的。

5.2.3问题解决办法

再增加一个条件,最后的时候先判断是否结束,再退出循环

六、实验总结(优点、不足、收获及体会)

我设计的研究生初试录取系统基本满足任务书的功能要求,类的结构和关系清晰,功能完善,能够比较粗略地实现所要求的功能。

存在的主要缺点:第一,没有使用链表,用动态数组来存放临时信息,可能在时间和空间上有一定的消耗;第二个最主要的缺点是,无法判断学生信息是否学号重合、总分是否正确,因为涉及到频繁的读写记录操作。并且我设计的系统把学号当做主键,只能通过学号来查找,这样的代码在实际生活中是及其单薄,甚至是漏洞百出的。

通过这次C++的大型实验,我深刻的明白到:课本知识与实践能力相结合的重要性。上课听得懂不代表真的会打代码了,虽然老师平时给我们的练习题目偏简单,我们也不应该放低对自己的要求,应当脚踏实地,一步步落实,把学到的知识转化为自己的。写代码的过程中,会出现非常非常多的错误,很大一部分原因是平时练习的太少了,实践能力太薄弱了,一写代码便错误百出。编译器只是机械的执行我们所给的指令,纵然代码语法上没有问题了,逻辑硬伤也会使得错误的结果产生,只有理清代码的逻辑关系,耐心编写修改,才能使得系统正常运行。这次的实验课让我熟悉了文件读写等等操作,这些都是我上课并不是很理解的知识,但通过这次实验,我熟悉了这学期学过的操作的使用方法,落实了上课的知识。只有将理论运用到实践中去,你才能深刻地理解这个理论,并在他的基础上举一反三。


源码

student.h

#ifndef STUDENT_H
#define STUDENT_H
#include <string>
#include <iostream>
#include <iomanip>
using std::string;using std::cin;using std::setw;
class student{private:string s_name;string s_id;string s_major;string isfresh;int scoreMath;int scoreEnglish;int scorePolitic;int scoreMajor;int total ;public:student( student &s){setname(s.getname());setid(s.getid());setMajor(s.getMajor());setisf(s.getisf() );setMath(s.getMath());setEnglish(s.getEnglish());setPolitic(s.getPolitic());setmajor(s.getmajor());settotal();}student(){}student(const string& na,const string &id,const string& maj,const string& isf,const int& politic,const int& math,const int& english,const int& major);void  setMath(int x){scoreMath=x;}void  setEnglish(int x ){scoreEnglish=x;}void  setPolitic(int x){scorePolitic=x;}void  setMajor(int x){ scoreMajor=x;}void setname(string na){s_name=na;}void setid(string id){s_id=id; }void setmajor(string maj){ s_major=maj;}void setisf(string isf){isfresh=isf;}void settotal(){total=scoreMath+scorePolitic+scoreMajor+scoreEnglish;}string getname(){return s_name;} string getid(){return s_id;}string getmajor(){return s_major;}string getisf(){return isfresh;}int getMath(){return scoreMath;}int getEnglish(){return scoreEnglish; } int getMajor(){return scoreMajor;}int getPolitic(){return scorePolitic;}int getsumscore(){return scoreMath+scoreEnglish+scoreMajor+scorePolitic; }bool ispassed(const int& po, const int& ma,const int& en, const int& maj,const int& tot);void setall(const string& na,const string &id,const string& maj,const string& isf,const int& politic,const int& math,const int& english,const int& major);friend std::istream& operator>> (std::istream &, student& );friend std::ostream& operator<< (std::ostream &, student& );};#endif // STUDENT_H

student.cpp

#include "student.h"
student::student(const string& na,const string &id,const string& maj,const string& isf,const int& politic,const int& math,const int& english,const int& major){setall( na,id,maj, isf, politic,math, english, major);settotal();}
void student::setall(const string& na,const string &id,const string& maj,const string& isf,const int& politic,const int& math,const int& english,const int& major){setMath(math);    setEnglish(english );setPolitic(politic);setMajor(major); setname( na); setid( id);setmajor(maj);setisf(isf);      }
std::istream& operator >> (std::istream &input, student& s)
{     input >> s.s_name >> s.s_id >> s.s_major >> s.isfresh>> s.scorePolitic >> s.scoreMath>> s.scoreEnglish >> s.scoreMajor >>s.total;return input;
}
std::ostream& operator<< (std::ostream &output, student& s)
{output << setw(11) << s.s_name;output << setw(11) << s.s_id;output << setw(11) << s.s_major;output << setw(11) << s.isfresh;output << setw(11) << s.scorePolitic;output << setw(11) << s.scoreMath;output << setw(11) << s.scoreEnglish;output << setw(11) << s.scoreMajor;output << setw(11) << s.total << "\n";return output;
}
bool student::ispassed(const int& po, const int& ma,const int& en, const int& maj,const int& tot)
{if(this->getPolitic() >=po&&   //各门课合格 this->getMath() >=ma&&this->getEnglish() >=en&&this->getMajor() >=maj&&this->getsumscore() >=tot)return true;return false;
}

main.cpp

#include"student.h"
#include<iostream>
#include<algorithm>
#include<vector>
#include<fstream>
using namespace std;
using std::string;
using std::setw;
class require{private:int po;int ma;int en;int maj;int tot;public:require(int p,int m,int e,int n,int t):po(p),ma(m),en(e),maj(n),tot(t){}require(){}int getpo(){return po;}int getma(){return ma;}int geten(){return en ;}int getmaj(){return maj;}int gettot(){return tot;}
friend  std::istream& operator >> (std::istream &input, require& a)
{input >> a.po >> a.ma  >> a.en  >> a.maj >> a.tot;return input;
}};
//************************************
void add(){ofstream fout("stut.txt",ios::app);cout<<"***请输入你想增加的人数***"<<endl;int n;cin>>n;student s;cout<<"---请按顺序输入"<<n<<"位学生的信息(参照以下顺序)---"<<endl;cout<<"1.姓名 2.学号 3.专业 4.是否为应届生 5.政治成绩 6.数学成绩 7.英语成绩 8.专业成绩 9 总成绩" <<endl;while(n--){cin>>s;fout<<s;}cout<<"good! 添加成功"<<endl;cout<<"~~~~~~ 返回上一级菜单请输入 1 ~~~~~~~~"<<endl;fout.close();}//************************
//******************************
void chaxun(){cout<<"为保证系统的运行,请输入该学生的学号"<<endl; string  id;cin>>id;int k=-1; student s;ifstream fin("stut.txt",ios::in);while(!fin.eof()){fin>>s;if(s.getid()==id){cout<<setw(11)<<"姓名"<<setw(11)<<"学号"<<setw(11)<<"学院"<<setw(11)<<"是否应届生"<<setw(11)<<"政治成绩"<<setw(11)<<"数学成绩"<<setw(11)<<"英语成绩"<<setw(11)<<"专业成绩"<<setw(11) <<"总成绩"<<endl;cout<<s;k=1; break; }}if(k==-1)cout<<"该学生不存在"<<endl;}//*************void change(){ofstream chan("change.txt",ios::app);cout<<"为保障系统正常运行学号唯一且不可修改"<<endl; cout<<"请输入你想修改学生的学号"<<endl;string id;cin>>id;student *s=new student [20];student a;int i=0,k=-1;ifstream fin("stut.txt",ios::in);while(!fin.eof()){fin>>a;if (fin.fail() )break;if(id==a.getid()){k=i;cout<<"原本数据为"<<endl;cout<<setw(11)<<"姓名"<<setw(11)<<"学号"<<setw(11)<<"学院"<<setw(11)<<"是否应届生"<<setw(11)<<"政治成绩"<<setw(11)<<"数学成绩"<<setw(11)<<"英语成绩"<<setw(11)<<"专业成绩"<<setw(11) <<"总成绩"<<endl<<a<<endl;}s[i++]=a;       }if(k==-1)cout<<"该学生不存在"<<endl;student st;chan <<s[k];cout<<"请按一下顺序输入新的数据,注意学号不可修改!!!!"<<endl;cout<<"1.姓名 2.学号 3.专业 4.是否为应届生 5.政治成绩 6.数学成绩 7.英语成绩 8.专业成绩 9 总成绩" <<endl;cin>>st;while(st.getid()!=id)   {cout<<"前后学号不一致,请重新输入!!!!!"<<endl;cin>>st;}   s[k]=st;ofstream  sout("stut.txt",ios::out);for(int j=0;j<i;j++){sout<<s[j];} delete[] s;cout<<"修改成功!!!"<<endl; }
void deletes(){ofstream chan("change.txt",ios::app);cout<<"为保障系统正常运行学号唯一且不可修改"<<endl; cout<<"请输入你想修改学生的学号"<<endl;int k=-1;string id;cin>>id;student s[20];student a;int i=0;ifstream fin("stut.txt",ios::in);while(!fin.eof()){fin>>a;if (fin.fail() )break;if(id==a.getid()){k=i;cout<<"原本数据为"<<endl<<setw(11)<<"姓名"<<setw(11)<<"学号"<<setw(11)<<"学院"<<setw(11)<<"是否应届生"<<setw(11)<<"政治成绩"<<setw(11)<<"数学成绩"<<setw(11)<<"英语成绩"<<setw(11)<<"专业成绩"<<setw(11) <<"总成绩"<<endl<<a<<endl;}s[i++]=a;      }
if(k==-1){
cout<<"该学生不存在"<<endl;
system("pause");}chan <<s[k];for(int j=k;j<i-1;j++){s[j]=s[j+1];}ofstream  sout("stut.txt",ios::out);for(int j=0;j<i-1;j++){sout<<s[j];} cout<<"删除成功!!!!"<<endl;
}
//***********************
void make(){require stan;student s;cout<<"请输如各科门课的过线标准"<<endl;cout<<"按如下顺序输入 "<<endl<<"1.政治 2.数学 3.英语 4.专业 5.总分" <<endl;cin>>stan; ifstream fin("stut.txt",ios::in);ofstream out("admission.txt");while(!fin.eof()){fin>>s;if(fin.fail())break;if(s.ispassed(stan.getpo(),stan.getma(),stan.geten(),stan.getmaj(),stan.gettot())){out<<s<<endl;}}}
//**********************************
bool bmp( student& a,student& b){return a.getsumscore() > b.getsumscore() ;}
void result(){student *a=new student [20];int i=0; ifstream infile("admission.txt");if(!infile){cout<<"请 先 返 回 菜 单 输 出 过 线 标 准"<<endl;}student s;while(!infile.eof()){infile>>s;if(infile.fail())break;a[i++]=s;}sort(a,a+i,bmp);cout<<"以下数据按总分从高到底输出"<<endl;cout<<setw(11)<<"姓名"<<setw(11)<<"学号"<<setw(11)<<"学院"<<setw(11)<<"是否应届生"<<setw(11)<<"政治成绩"<<setw(11)<<"数学成绩"<<setw(11)<<"英语成绩"<<setw(11)<<"专业成绩"<<setw(11) <<"总成绩"<<endl;int j; for( j=0;j<i;j++)cout<<a[j];cout<<"-~- 恭喜以上"<<j<<"位同学过线!!!!-~-"<<endl; delete[] a;}
//***************************void shangai(){student s;int k=-1;ifstream fin("change.txt");int n=0;while(!fin.eof()){fin>>s;if(fin.fail())break;if(n==0) cout<<setw(11)<<"姓名"<<setw(11)<<"学号"<<setw(11)<<"学院"<<setw(11)<<"是否应届生"<<setw(11)<<"政治成绩"<<setw(11)<<"数学成绩"<<setw(11)<<"英语成绩"<<setw(11)<<"专业成绩"<<setw(11) <<"总成绩"<<endl;n=1;cout<<s;k=1;}if(k==-1)cout<<"没有进行过删除操作"<<endl;
}
void menu(){cout<<" ----------------------------------------------------------------------- "<<endl; cout<<" |            欢 迎 来 到 研 究 生 初 试 录 取 系 统                   |  "  <<endl; cout<<" |                     1.查 询 学 生 数 据                             |" <<endl;cout<<" |                     2.增 加 学 生 信 息                             |" <<endl;cout<<" |                     3.修 改 学 生 信 息                             |" <<endl; cout<<" |                     4.删 除 某 个 学 生 信 息                       |" <<endl; cout<<" |                     5.制 定 过 线 标 准 并 输 出 过 线 学 生        |" <<endl;   cout<<" |                     6.查 询 已 删 改 记 录                          |  " <<endl;cout<<" -----------------------------------------------------------------------  "<<endl;}
int main(){int n;int x; while(1) {system("cls");menu();cout<<"请输入你的选择"<<endl;cin>>n;
switch(n){case(1):chaxun();break;case(2):add();break;case(3):change();break;case(4):deletes();break;case(5):make();result();break;case(6):shangai();break;} cout<<"返回菜单请按1"<<endl;cout<<"退出系统请按2"<<endl;cin>>x; if(x==2) exit(0);
}
}

C++程序设计课程设计(研究生初试录取系统)相关推荐

  1. c语言课程设计研究生初试录取报告,C语言程序设计课程设计 研究生初试录取

    课程设计的目的:C 语言课程设计是计算机各专业重要的教学环节,它为学生提 供了一个既动手又动脑,将课本上的理论知识和实际有机的结合起来,独立分析和解决 实际问题的机会. 进一步巩固和复习C 程序设计的 ...

  2. 用c语言编写研究生录取程序,C语言_课程设计---研究生初试录取管理系统.doc

    计算机科学与技术系 课程设计任务书 2010-2011年第二学期 课程 C语言课程设计 课程设计名称 研究生初试录取管理系统 专业班级 10 计本4 指导教师 2011年6月 一. 课程设计目的 将理 ...

  3. 研究生初试录取系统c++

    一个学期过去了,网课划水一时爽,一直划水一直爽,话不多说,来写写这学期的课程设计吧! 问题描述 研究生考试课程为 4 门,其中数学.外语.政 治为统一命题,而专业基础课则 根据不同的专业由招生学校自行 ...

  4. 研究生初试录取系统C语言,研究生初试录取管理系统

    C语言编写 /*程序运行时首先要求 输入:考生姓名,准考证号,报考专业,是否应届生,4门课程(政治.数学.外语.专业基础课)成绩.这些原始数据应保存到一个文件中. 然后输入:录取的总分要求,各课程的最 ...

  5. 研究生初试录取(课程设计)

    河工大大一学生期末考试前一个星期进行了vc++课程设计,倒是忙坏了好多人,各种求救,各种昏招.课程设计的通知刚下来时几乎所有人都不在乎,选题表下来了,好多人看了一眼,满不在乎的说:这好多不是咱们平常学 ...

  6. C++程序设计课程设计报告——自助点餐系统

    C++程序设计课程设计报告 一.任务要求 该系统为两种角色的用户提供服务,一种是餐厅管理员,一种是顾客.餐厅管理员根据账号.密码登录系统.顾客无需登录即可使用系统. 顾客通过该餐厅在系统中提供的菜单为 ...

  7. java学生选课系统课程设计报告_Java语言程序设计课程设计-学生选课系统

    <Java语言程序设计课程设计-学生选课系统>由会员分享,可在线阅读,更多相关<Java语言程序设计课程设计-学生选课系统(23页珍藏版)>请在人人文库网上搜索. 1.10届 ...

  8. ASP.NET程序设计课程设计——新闻发布系统

    点击查看详细信息 发现这个资源传的不是最新版,需要最新版资源的可以私聊我 ASP.NET程序设计课程设计--新闻发布系统 二.系统需求分析 2.1 功能性需求 用户可以在系统内界面实现登录和注册功能. ...

  9. 签到考勤java课设_Java程序设计课程设计学生考勤系统Word版

    <Java程序设计课程设计学生考勤系统Word版>由会员分享,可在线阅读,更多相关<Java程序设计课程设计学生考勤系统Word版(6页珍藏版)>请在人人文库网上搜索. 1.传 ...

最新文章

  1. QT:(2)Window10、VS15下安装qt5.12.8
  2. Apple watch 开发指南(1) 预览
  3. axios请求超时,设置重新请求的完美解决方法
  4. 【BO】WEBI文件打开时提示Illegal access错误
  5. CV 加持的工业检测,从算法选型到模型部署
  6. 如何搭建lamp(CentOS7+Apache+MySQL+PHP)环境
  7. 余承东嘲讽苹果:iPhone 12落后华为Mate40两代
  8. 网页端对接linux发起cc,(cc)实现Linux系统调用劫持
  9. 自定义按键连发工具_微软 PowerToys 增强工具,提升Win10 效率利器
  10. 从零开始react实战:云书签-1 react环境搭建
  11. 关系型数据库一致性的理解
  12. 一个简单的用于预测的BP神经网络模型
  13. Java J2SE 系列视频教程(北京上学堂马士兵老师经典java讲义)
  14. 影响力在职场的重要性
  15. JavaScript 中阶 打地鼠游戏(基础版)
  16. CORTEX-M4F基本知识
  17. android声纹识别技术,基于Android平台的声纹识别系统的研究与实现
  18. 真实的周星星,你了解吗?
  19. 《Love and Math》(1)
  20. 如何在BIOS设置电脑主机刚接通电源后开机方式

热门文章

  1. glusterfs Connection failed. Please check if gluster daemon is operational. 解决方法
  2. css grid 自动高度_10分钟理解CSS3 Grid布局
  3. WebRTC基础实践 - 10. 总结
  4. Pandas批量拆分Excel与合并Excel(十四)
  5. 点击免费领取视频拍摄和剪辑教程
  6. 林雨阁读书会《老子》心得
  7. Scott Hanselman的2006 Windows最终开发者和高级用户工具列表
  8. 1.Python-准备工作:搭建环境与“Hello,world!”
  9. 数据算法:Bloom Filter
  10. php和web前端工作描述,web前端岗位自我评价怎么写