请用C/C++编写一系统,实现学生信息管理,软件的入口界面应包括如下几个方面

作者&投稿:巩高 (若有异议请与网页底部的电邮联系)
请用C++编写一系统,实现学生成绩管理程序,软件的入口界面应包括如下几个方面: (一)功能要求  (1)~

就15分呀,呵呵

刚好做了个,是课程设计,
#include<iostream>
#include<string>
#include<iomanip>
#include<cstddef>
#include<cstdlib>
using namespace std;
struct Teachergongzi
{
string department;
int teacherNO;
string name;
float base_salary;
float post_salary;
float bonus;
Teachergongzi *next;
};
typedef Teachergongzi* TeacherGZ;
//去掉换行符
void new_line()
{
char symbol;
do{
cin.get(symbol);
}while(symbol!='
');
}
//创建链表
void Create(TeacherGZ &head)
{
TeacherGZ top;
top=new Teachergongzi;
top->next=NULL;
cout<<"

请输入您的系别/部门:";
cin>>top->department;
cout<<"
请输入您的学号:";
cin>>top->teacherNO;
cout<<"
请输入您的姓名:";
cin>>top->name;
cout<<"
请输入您QQ:";
cin>>top->base_salary;
cout<<"
请输入您的E-mail:";
cin>>top->post_salary;
cout<<"
请输入您的预存金额(每次消费后减去消费额):";
cin>>top->bonus;
top->next=head;
head=top;
}
//查找
TeacherGZ Lookup(TeacherGZ head)
{
TeacherGZ here=head;
int no,number;
string trs;
if(here==NULL)
{
cout<<"现无任何记录!
";
}
else
{
cout<<"
1.按姓名 2.按学号";
cout<<"

请选择:";
cin>>no;
switch(no)
{ case 1:
cout<<"

请输入要查找的姓名:";
cin>>trs;
while(here->name!=trs&&here->next!=NULL)
here=here->next;
if(here->name==trs)
{ cout<<"------------------------------------------------------------------------"<<endl;
cout<<"系别"<<" | "<<"学号"<<" | "<<"姓名"<<"| "<<"QQ号码"<<"|"<<"E-mail"
<<"| "<<"存有金额"<<endl;
cout<<head->department<<" | "<<head->teacherNO<<" | "<<head->name<<"| "
<<head->base_salary<<" | "<<head->post_salary<<" | "<<head->bonus<<endl;
cout<<"------------------------------------------------------------------------"<<endl<<endl;
}
else
cout<<"
查无此教师记录,请重输!

";
break;
case 2: cout<<"

请输入要查找的教师号:";
cin>>number;
while(here->teacherNO!=number&&here->next!=NULL)
here=here->next;
if(here->teacherNO==number)
{ cout<<"------------------------------------------------------------------------"<<endl;
cout<<"系别"<<" | "<<"学号"<<" | "<<"姓名"<<"| "<<"QQ号码"<<"|"<<"E-mail"
<<"| "<<"存有金额"<<endl;
cout<<head->department<<" | "<<head->teacherNO<<" | "<<head->name<<"| "
<<head->base_salary<<" | "<<head->post_salary<<" | "<<head->bonus<<endl;
cout<<"------------------------------------------------------------------------"<<endl<<endl;
}
else
cout<<"
查无此会员记录,请重输!

";
break;
default:
cout<<"
输入数据错误,请重输!

";
}

}
return here;
}
//修改
void Modify(TeacherGZ head)
{
TeacherGZ temp=head;
int no,number;
string trs;
if(temp==NULL)
{
cout<<"现无任何记录!
";
}
else
{
cout<<"

1.按姓名 2.按会员号";
cout<<"

请选择:";
cin>>no;
switch(no)
{ case 1: cout<<"

请输入要修改的姓名:";
cin>>trs;
while(temp->name!=trs&&temp->next!=NULL)
temp=temp->next;
if(temp->name==trs)
{ cout<<"

请输入要修改的数据:"<<endl;
cout<<"请输入您的系别/部门:";
cin>>temp->department;
cout<<"请输入您的学号:";
cin>>temp->teacherNO;
cout<<"请输入您的姓名:";
cin>>temp->name;
cout<<"请输入您的QQ:";
cin>>temp->base_salary;
cout<<"请输入您的E-mail:";
cin>>temp->post_salary;
cout<<"请输入您的预存金额(每次消费后减去消费额):";
cin>>temp->bonus;

}
else
cout<<"
查无此会员记录,请重输!

";
break;
case 2: cout<<"

请输入要修改的学号:";
cin>>number;
while(temp->teacherNO!=number&&temp->next!=NULL)
temp=temp->next;
if(temp->teacherNO==number)
{ cout<<"

请输入要修改的数据:"<<endl;
cout<<"请输入您的系别/部门:";
cin>>temp->department;
cout<<"请输入您的学号:";
cin>>temp->teacherNO;
cout<<"请输入您的姓名:";
cin>>temp->name;
cout<<"请输入您的QQ:";
cin>>temp->base_salary;
cout<<"请输入您的E-mail:";
cin>>temp->post_salary;
cout<<"请输入您的预存金额(每次消费后减去消费额):";
cin>>temp->bonus;
}
else
cout<<"
查无此会员记录,请重输!

";
break;
default:
cout<<"
输入数据错误,请重输!

";
}
}
}
//删除
int Delete(TeacherGZ head)
{
TeacherGZ before,discard;
int no,number;
string trs;
if(head==NULL)
{
cout<<"现无任何记录!
";
return 0;
}
else
{
discard=head;
cout<<"

1.按姓名 2.按学号";
cout<<"

请选择:";
cin>>no;
switch(no)
{ case 1: cout<<"

请输入要删除的姓名:";
cin>>trs;
while(discard->name!=trs&&discard->next!=NULL)
{ before=discard; //before指向当前节点
discard=discard->next; //discard指向下一个节点
}
if(discard->name==trs)
{ if(discard==head) //如找到的节点为第一个节点
head=discard->next; //则head使指向第二个节点
else //否则使before所指节点的指针指向下一个节点*/
before->next=discard->next;
delete discard;
cout<<"此学号已被删除!
";
return (1);
}
else
cout<<"
无此会员记录,请重输!

";
break;
case 2: cout<<"

请输入要删除的学号:";
cin>>number;
while(discard->teacherNO!=number&&discard->next!=NULL)
{ before=discard; //before指向当前节点
discard=discard->next; //discard指向下一个节点
}
if(discard->teacherNO==number)
{ if(discard==head) //如找到的节点为第一个节点
head=discard->next; //则head使指向第二个节点
else //否则使before所指节点的指针指向下一个节点*/
before->next=discard->next;
delete discard;
cout<<"此学号已被删除!
";
return (1);
}
else
cout<<"
无此会员记录,请重输!

";
break;
default:
cout<<"
输入数据错误,请重输!

";
}
return 0;
}
}
//借书数据????没完成
int xiaofei(TeacherGZ head)
{ int shuliang;
cout<<"请输入会员姓名:";
cout<<"请输入借书日期:";
cout<<"请输入书名:";
cout<<"1.输入完毕.2还有一本.";
cin>>shuliang;
if(shuliang==2)
cout<<"请输第2本书名:";
return 0;
}

//消费查询
//消费积分排序
//写入读出文件
//输出数据
int Output(TeacherGZ head)
{
if(head==NULL)
{
cout<<"现无任何记录!
";
return 0;
}
else
while(head!=NULL)
{
cout<<"------------------------------------------------------------------------"<<endl;
cout<<"系别"<<" | "<<"学号"<<" | "<<"姓名"<<"| "<<"QQ号码"<<"|"<<"E-mail"
<<"| "<<"存有金额"<<endl;
cout<<head->department<<" | "<<head->teacherNO<<" | "<<head->name<<"| "
<<head->base_salary<<" | "<<head->post_salary<<" | "<<head->bonus<<endl;
cout<<"------------------------------------------------------------------------"<<endl;
head=head->next;
cout<<endl;
return 0;
}
}


//销毁链表
/*void Destroy(TeachersalaryPtr head)
{
TeachersalaryPtr pre,sat;
pre=head;
while(pre!=0)
{
sat=pre; //指针sat记录待销毁节点
pre=pre->next;
delete sat;
}
}*/
int main()
{
TeacherGZ head=NULL;
int sel=1;
cout<<"

---------------------------------------------
";
cout<<"* 欢迎使用《新新书屋》图书出租管理系统 *
"
<<"* 设计者 (自己加上) *
"
<<"* 班级 (XXX自己加上) *
"
<<"* 学号:(自己...) *
";
cout<<" ---------------------------------------------

";
while(sel!=0)
{
cout<<"*********************************************
"
<<"* 1.新会员注册 2.查找会员信息 *
"
<<"* 3.修改会员信息 4.删除会员信息 *
"
<<"* 5.会员积分排行 6.查看会员消费 *
"
<<"* 7.会员借书管理 0.退出操作 *
"
<<"*********************************************
"
<<"

请选择您所需要的功能:";
cin>>sel;
switch(sel){
case 1:
Create(head);
break;
case 2:
Lookup(head);
break;
case 3:
Modify(head);
break;
case 4:
Delete(head);
break;

case 6:
Output(head);
break;
case 0:
sel=0;
cout<<"
谢谢您的使用!
";
break;
}
}
return 0;
}

#include <iostream>
#include
<string>
using namespace std;
class Student
{
public:
Student()
{
score1=0;
score2=0;
score3=0;
}
Student(string name1,int s1,int
s2,int s3);//三科成绩
static void Aver(int &s1,int
&s2,int &s3,int &E_s);//修改引用,得到三科成绩平均分和总平均分
void Show(int flag);//显示个人信息
int
Get(int flag);//获取个人总分

private:
static int sum_score1,
sum_score2, sum_score3;
static int people;
string name;
int score1,
score2,score3;
};
int
Student::sum_score1=0;
int Student::sum_score2=0;
int Student::sum_score3=0;
int
Student::people=0;
Student::Student(string name1,int s1,int
s2,int s3)
{

name=name1;
score1=s1;
score2=s2;
score3=s3;
sum_score1+=score1;
sum_score2+=score2;
sum_score3+=score3;
people++;
}
void Student::Aver(int &s1,int &s2,int &s3,int
&sum_s)
{

s1=sum_score1/people;
s2=sum_score2/people;
s3=sum_score3/people;

sum_s=(sum_score1+sum_score2+sum_score3)/people;
}
int Student::Get(int flag)
{
if(flag==1)
return score1;
else
if(flag==2)
return score2;
else
if(flag==3)
return score3;
else
return
(score1+score2+score3);
}
void
Student::Show(int flag)
{
if(flag==1)

cout<<"第一科成绩:"<<score1<<" 姓名:"<<name<<endl;
else
if(flag==2)

cout<<"第二科成绩:"<<score2<<" 姓名:"<<name<<endl;
else
if(flag==3)
cout<<"第三科成绩:"<<score3<<"
姓名:"<<name<<endl;
else

{
cout<<"姓名:"<<name<<endl;
cout<<"第一科成绩:"<<score1<<endl;
cout<<"第二科成绩:"<<score2<<endl;
cout<<"第三科成绩:"<<score3<<endl;
}
}
int main()
{
void Sort(Student *p,int num,int
flag);
string name;//性名
int
num;//人数
int i;//循环变量
int
flag;//标记排名的科目,1表示按第一课排序、2表示按第二课排序、3表示按第三课排序、4表示按总分排序

int s1, s2, s3;//三科成绩
int
aver1=0,aver2=0,aver3=0,sum_aver=0;//三科平均成绩和总平均成绩

cout<<"请输入人数:" ;
cin>>num;
Student *p;
p=new
Student[num];//声明指针数组
for(i=0;i<num;i++)
{

cout<<endl<<"请输入第"<<i+1<<"人的姓名和三科信息:" ;

cin>>name>>s1>>s2>>s3;
p[i]=Student (name,s1,s2,s3);
}

Student::Aver(aver1,aver2,aver3,sum_aver);

cout<<"三科和总的平均成绩分别是:"<<aver1<<"、"<<aver2<<"、"<<aver3<<"、"<<sum_aver<<endl;
for(flag=1;flag<=4;flag++)

Sort(p,num,flag);
system("pause");
delete []p;
return 0;
}
void Sort(Student *p,int num,int flag)
{
int i, j;
Student
t;//用做交换变量
for(i=0;i<num-1;i++)//冒泡排序
for(j=0;j<num-1-i;j++)
{

if(p[j].Get(flag)<p[j+1].Get(flag))
{
t=p[j];
p[j]=p[j+1];
p[j+1]=t;
}
}
for(i=0;i<num;i++)//显示信息

p[i].Show(flag);
}

我记得夜影写过。。
去bcwhy找找吧

www.bcwhy.com


为什么要用字母c表示周长?还有,为什么要用字母s表示面积?请给我一个...
C就是英文字母Circumference的缩写,S就是英文字母Square的缩写,这些字母大多是有这样的来的。多边形的周长的长度也相等于图形所有边的和,圆的周长=πd=2πr (d为直径,r为半径,π),扇形的周长 = 2R+nπR÷180˚(n=圆心角角度)= 2R+kR (k=弧度)。圆:C=πd=2πr(d为直...

计算机C语言有什么用啊??
1、C语言是高级语言。它把高级语言的基本结构和语句与低级语言的实用性结合起来。C 语言可以像汇编语言一样对位、字节和地址进行操作,而这三者是计算机最基本的工作单元。2、C语言是结构式语言。结构式语言的显著特点是代码及数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立。这种结构化方式...

C语言主要用在哪些方面?
(1)应用软件。Linux操作系统中的应用软件都是使用C语言编写的,因此这样的应用软件安全性非常高。(2)对性能要求严格的领域。一般对性能有严格要求的地方都是用C语言编写的,比如网络程序的底层和网络服务器端底层、地图查询等。(3)系统软件和图形处理。C语言具有很强的绘图能力和可移植性,并且具备...

c语言有什么用
“项目驱动式”教学就是以项目为目的,以c语言理论教学为过程,最终能用c语言设计项目,实现项目的要求。“项目驱动式”教学的关键在于培养学生“如何做什么”和“可以干什么”。一个项目就是一个工程,在“项目驱动式”教学中,首先应该让学生简单了解什么是软件工程思想,其次在c语言理论教学过程中,让学生懂得面向对象的...

学习C语言有什么用?
”欢喜的是,C语言功能非常强大、应用广泛,一旦掌握了后,再自学其他语言就显得轻而易举了。忧虑的是,C语言犹如“少林武功”一般博大精深,太难学了。其实就笔者认为C语言并非是“difficult(困难)”的,只要你能理清思路,掌握它的精髓,那么自学C语言是一件非常容易且又其乐无穷的事。今天本人就与...

c语言中的语言可以在c++中用吗
可以的。c++是向下对C语言兼容的。C语言中所有的特性或函数还有操作符都可在C++中不经过修改直接使用。不同的是,C++的标准函数库(STL)可能提供了更好的实现方式。楼主可以大胆在C++中使用C的函数,不用担心的。

C语言这么厉害,它自身又是用什么语言写的?编写过程被称为自举
OK, 这么一层层上来,终于得到了一个用C语言写的编译器, 真是够麻烦的。到这个时候,之前那个汇编写的C语言编译器就可以抛弃了。当然,如果在C语言之前,已经出现了别的高级语言,例如Pascal,那就可以用Pascal来写一个C语言的编译器。第一个Pascal的编译器据说使用Fortran写的。而作为第一个高级...

学习C语言一般用什么软件?
新手学习C语言一般用什么软件1、Dev-C++ Windows 环境下的一个轻量级 C语言\/C++ 集成开发环境(IDE),遵守GPL许可协议分发源代码。它集合了功能强大的源码编辑器、MingW64\/TDM-GCC 编译器、GDB 调试器和 AStyle 格式整理器等众多自由软件,操作十分便捷。2、Code::Blocks 这是一个开源、跨平台的C\/C++...

C语言编程有哪些好用的软件?
1.C语言编程软件有哪些。Mcrosoft Visual C++ 、Microsoft Visual Studio、 DEV C++、Code::Blocks、Borland C++、WaTCom C++、Borland C++ Builder、GNU DJGPP C++、Lccwin32 C Compiler3.1、High C、Turb C、gcc、C-Free和Win-TC、My Tc等等,由于C语言比较成熟,所以编程环境很多。2.C语言入门...

如何用“C语言”实现“选项有功能的文本菜单”?
1、直接用输出即可实现、2、例程:include<stdio.h>#include <stdlib.h>void hello(){ printf("hello world\\n");}int main(){ int x; while (1) { printf("---操作选项---\\n"); printf("1:返回菜单 \\n"); printf("2:退出程序 \\n"); printf("3:执行操作 \\n"); ...

海南区15535589013: 用C++编写一个程序 学生信息管理系统 -
卢瑗清肺: #include#include#include#include#defineMax 1000usingnamespacestd;classstudent{private: char name[20]; int number; int grade;public: student(char*,int,int); char*GetName(){returnname;} int GetNo(){returnnumber;} int GetGra(){returngrade;}};...

海南区15535589013: 用C++代码 编写一个图书管理系统 -
卢瑗清肺: /* lib.txt的格式为 书的id categoryid\n 书的状态 借书人的id\n 书的名字\n*/#include<stdio.h>#include<stdlib.h>#include<stdbool.h>//定义bool类型#include<string.h> typedef struct book book; struct book{ int bid;//书的id int cid;//category id 所属的书...

海南区15535589013: 仅用C和C++就能编写出一个简单的操作系统吗 -
卢瑗清肺: 事实上,仅用c,就可以编写很复杂的,功能完备的操作系统

海南区15535589013: 用C或C++设计一个旅游管理系统 -
卢瑗清肺: 首先设计登录界面 1.checkin --登记旅游天数和时间 2.checkout --退订 3.find --按照姓名或者编号查找游客信息 4.sort --按照旅游的时间来排序或者天数 5.browse --查看所有登记的游客 6.exit --退出系统 进入系统,首先显示欢迎界面,并提示输入需...

海南区15535589013: 用C++代码 编写一个图书管理系统 -
卢瑗清肺: /*lib.txt的格式为书的id categoryid\n书的状态 借书人的id\n书的名字\n*/#include#include#include//...

海南区15535589013: 用c语言或c++做一个通讯录管理系统 -
卢瑗清肺: #include<iostream.h>#include<iomanip.h>#include<string.h> class pbook {int cellphone,phone; char name[20],first,sex[10],workplace[30]; char date[15]; public: void addin(); char* gname(){return name;} char getf(){ return first;} void print() { cout<<...

海南区15535589013: 操作系统可以用C++编写吗?怎么编写(大概步骤即可)
卢瑗清肺: 学盖茨哥,编写操作系统是个不错的构想.但是.一个操作系统是一个浩大的工程.必须汇集各种人才,熟悉各种语言的,熟悉各种硬件系统的.很多牛人..用C++可以编写其中的一部分.但是涉及到底层的东西还要靠C啊汇编啊.10代码都会用到..估计没几个人编过操作系统的..您问怎么编写,谁也说不清.可能盖茨哥知道吧.

海南区15535589013: C++编写一个简单程序. -
卢瑗清肺: #include <iostream.h> void main(){ int n,i; cout<<"输入一个数:\n"; cin>>n; for(i=1;i<=10;i++){ cout<<n<<"*"<<i<<"="<<n*i<<"\t"; if(i%2==0) cout<<endl; } }

海南区15535589013: C/C++编写一个使用系统调用从一个文件中读入数据并复制到另一个文件的程序 -
卢瑗清肺: 文件复制,就调 copy 命令就可以了. system ("copy abc.dat def.dat"); 就把 abc.dat 复制到 def.dat 了.如果文件名带空白,可以加 \" \" 括起来: system ("copy \"abc A.dat\" \"def B.dat\" ");文件名带路径,用双斜杠: \"D:\\dir\\abc A.dat\"

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网