如何用c语音定义电脑系统_如何用c语音定义电脑系统数据

#include<iostream>

#include<string>

#include<fstream>

#include<iomanip>

using namespace std;

class student

{

protected:

int number;

char name[20];

char sex[6];

char place[20];

char nation[6];

char birth[20];

char party[10];

char id[20];

double score[3];

public:

student *next;

student(){ }

~student(){ }

char* getname(){ return name; }

int getnumber(){ return number;}

double getscore(int i) { return score[3];}

float getg(){ return (score[0]+score[1]+score[2]); }

void input()

{

int e=1;

cout<<"\t\t\t按提示输入:"<<endl;

cout<<"\t\t输入编号: ";

cin>>number;

cout<<"\t\t输入姓名: ";

cin>>name;

do

{

cout<<"\t\t输入性别: ";

cin>>sex;

if(strcmp(sex,"男")==0 || strcmp(sex,"女")==0)

{

cout<<"\t\t输入籍贯: ";

cin>>place;

cout<<"\t\t输入民族: ";

cin>>nation;

cout<<"\t\t输入生日: ";

cin>>birth;

cout<<"\t\t输入政治面貌: ";

cin>>party;

cout<<"\t\t输入身份证号: ";

cin>>id;

cout<<"\t\t输入数学分数: ";

cin>>score[0];

cout<<"\t\t输入英语分数: ";

cin>>score[1];

cout<<"\t\t输入计算机分数: ";

cin>>score[2];

e=0;

}

else

{

cout<<"\t\t\t无此类型性别!重新输入!"<<endl;

e=1;

}

}while(e);

return ;

}

void input(ifstream & is)

{

is>>number>>name>>sex>>place>>nation>>birth>>party>>id

>>score[0]>>score[1]>>score[2];

is.get();

}

void output()

{

cout<<"学生基本信息如下:"<<endl;

cout<<"编号:"<<number

<<" 姓名:"<<name

<<" 性别:"<<sex

<<" 籍贯:"<<place

<<" 民族:"<<nation

<<" 生日:"<<birth

<<" 政治面貌:"<<party<<endl

<<"身份证号:"<<id

<<" 数学:"<<score[0]

<<" 英语:"<<score[1]

<<" 计算机:"<<score[2]

<<" 总分:"<<getg()<<endl<<endl;

}

void output(ofstream & os)

{

os<<setw(6)<<number

<<setw(15)<<name

<<setw(6)<<sex

<<setw(20)<<place

<<setw(6)<<nation

<<setw(20)<<birth

<<setw(20)<<party

<<setw(20)<<id

<<setw(6)<<score[0]

<<setw(6)<<score[1]

<<setw(6)<<score[2]<<endl;

}

};

class school

{

public:

school(){ head=new student; head->next=NULL; key=0; }

~school(){ delete head; }

void input();

void mend();

void del();

int find(student **p,int num,char *pn="^");

void found();

void show();

void count();

void save();

void begin();

void clear();

char mainmenu();

int getkey(){ return key;}

void setkey(int k){ key=k; }

private:

student *head;

int key;

};

//录入函数

void school::input()

{

student *p,*p2=NULL;

p=head;

int n;

while(p->next)

p=p->next;

while(n)

{

p2=new student;

p2->input();

p->next=p2;

p2->next=NULL;

p=p->next;

school::setkey(1);

cout<<"\t\t\t按1继续,按0返回 : ";

cin>>n;

}

}

//子查找函数

int school::find(student **p1,int num,char *pn)

{

student *p;

p=head;

while(p->next)

{

(*p1)=p;

if( (p->next)->getnumber()==num||!strcmp( (p->next)->getname(),pn ) )

return 1;

p=p->next;

}

return 0;

}

//查找函数

void school::found()

{

student *p;

int num=-1,n=9;

char name[20]="^";

do

{

cout<<"\t\t1:按编号查找,2:按姓名查找: ";

cin>>n;

}while(n<1||n>2);

if(n==1)

{

cout<<"\t\t\t输入编号: ";

cin>>num;

}

if(n==2)

{

cout<<"\t\t\t输入姓名: ";

cin>>name;

}

if(!find(&p,num,name) )

{

cout<<"\t\t找不到你要查找的内容!"<<endl;

return;

}

(p->next)->output();

}

//删除函数

void school::del()

{

student *p,*p2;

int num;

cout<<"\t\t\t输入编号: ";

cin>>num;

if( !find(&p,num,"^") )

{

cout<<"\t\t找不到你要删除的内容!"<<endl;

return;

}

(p->next)->output();

p2=p->next;

p->next=p2->next;

delete p2;

school::setkey(1);

}

//显示函数

void school::show()

{

student *p;

p=head;

while(p->next)

{

(p->next)->output();

p=p->next;

}

}

//修改函数

void school::mend()

{

student *p;

int num=-1,n;

char name[20]="^";

do

{

cout<<"\t\t1:按编号修改,2:按姓名修改: ";

cin>>n;

}while(n<1||n>2);

if(n==1)

{

cout<<"\t\t\t输入编号: ";

cin>>num;

}

if(n==2)

{

cout<<"\t\t\t输入姓名: ";

cin>>name;

}

if( !find(&p,num,name) )

{

cout<<"\t\t找不到你要修改的内容!"<<endl;

return;

}

(p->next)->output();

(p->next)->input();

school::setkey(1);

}

//保存函数

void school::save()

{

student *p;

p=head;

ofstream os("student.txt",ios::out);

if (school::getkey()==1)

{

while(p->next)

{

(p->next)->output(os);

p=p->next;

}

}

cout<<"\t\t\t文件已保存! "<<endl;

school::setkey(0);

}

//初始化函数

void school::begin()

{

student *p,*p2;

p=head;

clear();

long t;

ifstream is("student.txt",ios::in);

if(!is)

{

ofstream os("student.txt",ios::out);

os.close();

return ;

}

int num=-1;

while(1)

{

num=-1;

t=is.tellg();

is>>num;

is.seekg(t);

if(num<0)

{

is.close();

return;

}

p2=new student;

p2->input(is);

p->next=p2;

p2->next=NULL;

p=p->next;

}

}

//清空函数

void school::clear()

{

student *p,*p2;

p=head->next;

while( p )

{

p2=p;

p=p->next;

delete p2;

}

}

//统计函数

void school::count()

{

student *p;

p=head;

int n=0;

double g[3]={0,0,0};

float j[3]={0,0,0};

while(p->next)

{

p=p->next;

n++;

for(int i=0;i<3;i++)

{

g[++i]=g[i]+( p->getscore(i) );

(p->getscore(i) )>=60? j[i++] : 0 ;

}

}

cout<<"\t\t\b\b\b\b数学总分:"<<g[0]<<" 平均分:"<<g[0]/n

<<" 及格率:"<<j[0]/n<<endl<<"\t\t\b\b\b\b英语总分:"<<g[1]

<<" 平均分:"<<g[1]/n<<" 及格率:"<<j[1]/n<<endl

<<"\t\t\b\b\b\b计算机总分: "<<g[2]<<" 平均分: "<<g[2]/n

<<" 及格率:"<<j[2]/n<<endl;

}

//主选菜单函数

char school::mainmenu()

{

char n[6];

cout<<"\n\n ☆☆☆☆欢迎进入高校学籍管理系统☆☆☆☆"<<endl<<endl

<<" * * * * * * * * * * * * * * * * * * * * * * * * * * * *"<<endl

<<" * * * * * * * * * * * * * * * * * * * * * * * * * * * *"<<endl

<<" * * 1: 录入学生信息 * *"<<endl

<<" * * 2: 显示学生信息 * *"<<endl

<<" * * 3: 查找学生信息 * *"<<endl

<<" * * 4: 删除学生信息 * *"<<endl

<<" * * 5: 修改学生信息 * *"<<endl

<<" * * 6: 统计学生成绩 * *"<<endl

<<" * * 7: 保存学生信息 * *"<<endl

<<" * * 0: 退出系统 * *"<<endl

<<" * * * * * * * * * * * * * * * * * * * * * * * * * * * *"<<endl

<<" * * * * * * * * * * * * * * * * * * * * * * * * * * * *"<<endl

<<" 请选择:";

cin>>n;

return n[0];

}

//主函数

void main()

{

school pp;

int k=1;

char n;

pp.begin();

while(k==1)

{

n=pp.mainmenu();

switch(n)

{

case '1':pp.input(); break;

case '2':pp.show(); break;

case '3':pp.found(); break;

case '4':pp.del(); break;

case '5':pp.mend(); break;

case '6':pp.count(); break;

case '7':pp.save(); break;

case '0':

if(pp.getkey()==1)

{

cout<<"\t\t\t是否保存? 1 : 保存 0:不保存 : ";

cin>>k;

if(k==1)

pp.save();

}

pp.clear();

k=0;

break;

}

}

}

嵌入式系统是你的强项,那么计算机等级考试就不足为惧了。本文将为你提供一份嵌入式系统学习指南,帮助你从计算机组成原理和操作系统理论入手,深入学习嵌入式系统的核心知识。当然,C语言也是必不可少的技能。

计算机组成原理

计算机组成原理是嵌入式系统学习的基础,它涉及到计算机硬件的各个方面,包括CPU、存储器、输入输出设备等。通过学习计算机组成原理,你可以更好地理解嵌入式系统的工作原理。

操作系统理论

操作系统是嵌入式系统的核心组成部分,它负责管理系统资源、调度任务、提供接口等。学习操作系统理论可以帮助你更好地理解嵌入式系统的运行机制,为你后续的学习打下坚实的基础。

C语言基础

C语言是嵌入式系统开发的必备技能,它是一种高效、灵活的编程语言,广泛应用于嵌入式系统的开发中。学习C语言可以帮助你更好地理解嵌入式系统的编程模式和开发流程。

深入学习嵌入式系统

通过学习计算机组成原理、操作系统理论和C语言基础,你已经具备了嵌入式系统学习的基础。接下来,你可以深入学习嵌入式系统的核心知识,包括嵌入式系统的体系结构、嵌入式系统的编程模式、嵌入式系统的调试和测试等。