C++ 简单的学生信息管理系统
//
// main.cpp
// 2013-7-17作业1
//
// Created by 丁小未 on 13-7-17.
// Copyright (c) 2013年 dingxiaowei. All rights reserved.
//
//1.有这样一个学生系统,用于学校存储学生信息,当有新生的时候存储新生信息,有学生毕业的时候删除学生信息,还可以修改学生信息,比如学生突然更改了姓名或者学生换了专业。学生信息至少要有姓名,学号,年龄,性别,专业,手机号码。
//条件:使用类Student,完成。
#include <iostream>
#define NUM 50
using namespace std; class Student
{
private:
int num;//学号
string name;//姓名
int age; //年龄
char sex; //性别
string profession;//专业
string telphone;
public:
Student()
{ }
Student(int nu,string na,int ag,char sx,string pr,string te)
{
num = nu;
name = na;
age = ag;
sex = sx;
profession = pr;
telphone = te;
}
void SetNum(int nu)
{
num = nu;
}
void SetName(string na)
{
name = na;
}
void SetAge(int ag)
{
age = ag;
}
void SetSex(char sx)
{
sex = sx;
}
void SetProfession(string pr)
{
profession = pr;
}
void SetTelphone(string te)
{
telphone = te;
}
Student* GetStudent()
{
Student *stu;
return stu;
}
int GetNum()
{
return num;
}
string GetName()
{
return name;
}
int GetAge()
{
return age;
}
char GetSex()
{
return sex;
}
string GetProfession()
{
return profession;
}
string GetTelphone()
{
return telphone;
} //还要有整体的赋值,可以用单目运算符重写=
Student&operator = (const Student & other)
{
if (this == &other) {
return *this;
}
this->num = other.num;
this->name = other.name;
this->age = other.age;
this->sex = other.sex;
this->profession = other.profession;
this->telphone = other.telphone;
}
}; //输入学生,返回输入的个数
int setStudent(Student stu[],int n)
{
int i=;
int j;
int iTemp;
string sTemp;
char cTemp;
int f=;
do {
cout<<"请输入学生学号"<<endl;
cin>>iTemp;
stu[i].SetNum(iTemp);
cout<<"请输入学生姓名"<<endl;
cin>>sTemp;
stu[i].SetName(sTemp);
cout<<"请输入学生年龄"<<endl;
cin>>iTemp;
stu[i].SetAge(iTemp);
cout<<"请输入学生性别"<<endl;
cin>>cTemp;
stu[i].SetSex(cTemp);
cout<<"请输入学生专业"<<endl;
cin>>sTemp;
stu[i].SetProfession(sTemp);
cout<<"请输入学生手机号"<<endl;
cin>>sTemp;
stu[i].SetTelphone(sTemp);
i++;
cout<<"请问要输入学生信息吗?(1.要 2.不要)";
cin>>f;
} while (==f);
// for (i=0; i<n; i++) {
// printf("请问要输入学生信息吗?(1.要 2.不要)");
// cin>>j;
// if (2==j) {
// break;
// }
// else
// {
// cout<<"请输入学生学号"<<endl;
// cin>>iTemp;
// stu[i].SetNum(iTemp);
// cout<<"请输入学生姓名"<<endl;
// cin>>sTemp;
// stu[i].SetName(sTemp);
// cout<<"请输入学生年龄"<<endl;
// cin>>iTemp;
// stu[i].SetAge(iTemp);
// cout<<"请输入学生性别"<<endl;
// cin>>cTemp;
// stu[i].SetSex(cTemp);
// cout<<"请输入学生专业"<<endl;
// cin>>sTemp;
// stu[i].SetProfession(sTemp);
// cout<<"请输入学生手机号"<<endl;
// cin>>sTemp;
// stu[i].SetTelphone(sTemp);
// }
// }
return i;//返回输入的学生数
} //返回查找学号为什么的学生的下标
int findStudent(Student *stu,int n,int findNum)//要查询的Student数组,实际查询的条数,要查询的学号
{
int i;
int m=-;
for (i=; i<n; i++) {
if(stu[i].GetNum()==findNum)
{
m=i;
break;
}
}
return m; //返回Stu的下标
} //删除一条学生信息
int deleteStudent(Student *stu,int n,int deleteStudentNum) //在学生数组中删除学号为deleteStudentNum的学生,并且个数减少1
{
int i;
int j=;
for (i=; i<n; i++) {
if (stu[i].GetNum()==deleteStudentNum) {
for (j=i; j<n-; j++) {
stu[j]=stu[j+];
}
n--;
i--;
}
}
return n; //返回n-1
}
Student addStudent()
{
Student stu;
int iTemp;
char cTemp;
string sTemp;
cout<<"请输入学生学号"<<endl;
cin>>iTemp;
stu.SetNum(iTemp);
cout<<"请输入学生姓名"<<endl;
cin>>sTemp;
stu.SetName(sTemp);
cout<<"请输入学生年龄"<<endl;
cin>>iTemp;
stu.SetAge(iTemp);
cout<<"请输入学生性别"<<endl;
cin>>cTemp;
stu.SetSex(cTemp);
cout<<"请输入学生专业"<<endl;
cin>>sTemp;
stu.SetProfession(sTemp);
cout<<"请输入学生手机号"<<endl;
cin>>sTemp;
stu.SetTelphone(sTemp);
return stu;
}
//添加一个学生(可能有点问题)
int insertStudent(Student *stu,int n)
{
Student s=addStudent();
stu[n] = s;
return ++n;
} //修改学生信息
void alterStudent()
{ } //打印标题行
void printTitle()
{
cout<<"学号 "<<"姓名 "<<"年龄 "<<"性别 "<<"专业 "<<"手机号"<<endl;
} //输出打印学生信息
void getStudent(Student *stu,int n)
{
int i;
printTitle();//打印标题
for (i=; i<n; i++) {
cout<<stu[i].GetNum()<<" "<<stu[i].GetName()<<" "<<stu[i].GetAge()<<" "<<stu[i].GetSex()<<" "<<stu[i].GetProfession()<<" "<<stu[i].GetTelphone()<<" "<<endl;
}
}
//显示菜单
void showMenu()
{
cout<<">>>>>>>>>>>>欢迎使用学生信息管理系统<<<<<<<<<<<<<<<"<<endl;
cout<<"***********************************************"<<endl;
cout<<"* 1.初始化学生 2.添加学生 *"<<endl;
cout<<"* 3.修改学生 4.删除学生 *"<<endl;
cout<<"* 5.显示所有学生 6.退出 *"<<endl;
cout<<"***********************************************"<<endl;
}
//菜单选择
int get_menu_choice()
{
int menu_ch;
do {
cout<<"选择菜单选项:";
cin>>menu_ch;
if ((menu_ch<)||(menu_ch>)) {
cout<<"error!"<<endl;
}
} while ((menu_ch<)||(menu_ch>));
return menu_ch;
}
int main(int argc, const char * argv[])
{ Student* stu = new Student[NUM]; int r1=;
int r2;//保存查找的学号
int choose;
while () {
showMenu();
switch (get_menu_choice()) {
case :
r1=setStudent(stu,NUM);//返回输入的个数
break;
case :
r1=insertStudent(stu,r1);
getStudent(stu, r1);
break;
case :
cout<<"请输入要修改的学生的学号:";
int nn;
cin>>nn;
r2=findStudent(stu, r1, nn);
if (r2==-) {
cout<<"没有该学生!";
}
else
{
int iTemp;
char cTemp;
string sTemp;
cout<<"请输入学生学号"<<endl;
cin>>iTemp;
stu[r2].SetNum(iTemp);
cout<<"请输入学生姓名"<<endl;
cin>>sTemp;
stu[r2].SetName(sTemp);
cout<<"请输入学生年龄"<<endl;
cin>>iTemp;
stu[r2].SetAge(iTemp);
cout<<"请输入学生性别"<<endl;
cin>>cTemp;
stu[r2].SetSex(cTemp);
cout<<"请输入学生专业"<<endl;
cin>>sTemp;
stu[r2].SetProfession(sTemp);
cout<<"请输入学生手机号"<<endl;
cin>>sTemp;
stu[r2].SetTelphone(sTemp);
}
break;
case :
cout<<"请输入要删除学生的学号:";
int n;
cin>>n;
r2=findStudent(stu, r1, n);
if (r2==-) {
cout<<"没有该学生!";
}
else
{
r1=deleteStudent(stu, r1, n);
cout<<"删除成功!"<<"\n"<<"显示所有学生"<<endl;
getStudent(stu, r1);
}
break;
case :
getStudent(stu, r1);
break;
case :
cout<<"您已经成功退出系统,欢迎再次使用!谢谢!"<<endl;
break;
default:
break;
}
}
return ;
}

C++ 简单的学生信息管理系统的更多相关文章
- 【python免费代码】设计一个简单的学生信息管理系统
文章目录 前言 一.理解 二.部分截图展示 三.代码 四.总结 前言 设计一个简单的学生信息管理系统,实现以下功能(bug) : 录入学生信息,信息以文件方式存储 以学生学号或者学生姓名为条件查询该学 ...
- PHP实现简单的学生信息管理系统(web版)
(∩_∩) 1.概述 学了php的一些基础,包括HTML,php,pdo,mysql操作等,一直都没有将它们有机结合.最近写了一个简单的网页版学生信息管理系统,前台用HTML,脚本用到了JavaScr ...
- 程序阅读:简单C++学生信息管理系统
课程首页在:http://blog.csdn.net/sxhelijian/article/details/11890759,内有完整教学方案及资源链接 [程序阅读]阅读并执行以下的程序,找出当中出现 ...
- Py学生信息管理系统 案例(优化版)
# 第一题:设计一个全局变量,来保存很多个学生信息:学生(学号, 姓名,年龄):思考要用怎样的结构来保存:# 第二题:在第一题基础上,完成:让用户输入一个新的学生信息(学号,姓名,年龄):你将其保存在 ...
- Python学生信息管理系统的开发
# 第一题:设计一个全局变量,来保存很多个学生信息:学生(学号, 姓名,年龄):思考要用怎样的结构来保存:# 第二题:在第一题基础上,完成:让用户输入一个新的学生信息(学号,姓名,年龄):你将其保存在 ...
- Python基础案例练习:制作学生信息管理系统
一.前言 学生信息管理系统,相信大家或多或少都有做过 最近看很多学生作业都是制作一个学生信息管理系统 于是,今天带大家做一个简单的学生信息管理系统 二.开发环境: 我用到的开发环境 Python 3. ...
- 学生信息管理系统v1.0
昨天一个教师朋友找到我,告诉我现在学期末他工作比较忙.需要统计处理很多学生信息,想让我帮他做一个管理系统.实现的功能就是把WPS表格转化成Word文档,将每一个学生的信息都能够分开,并且要根据名字找到 ...
- Java 实现学生信息管理系统
编写一个简单的学生管理信息系统. 在oracle中设计一张学生表,以学号作为关键字. 其他学生信息有:姓名.手机号. 在进入系统时,显示如下菜单: ************************** ...
- Java课设(学生信息管理系统)
1.团队课程设计博客链接 http://www.cnblogs.com/Min21/p/7064093.html 2.个人负责模板或任务说明 设计登陆界面和学生信息界面的设计,学生信息的显示.退出等功 ...
随机推荐
- C# 毕业证书打印《三》
打印很关键的方法,打印方法DataPrint(),将你要打印的数据信息发送到打印机就可以了,打印机将自动处理. public void DataPrint() { try { PrintDocumen ...
- [k]css盒模型
box-sizing : content-box || border-box || inherit 1.content-box:此值为其默认值.元素的宽度/高度(width/height)等于元素边 ...
- SQL Server日期和时间的格式
在SQL Server数据库中,SQL Server日期时间格式转换字符串可以改变SQL Server日期和时间的格式,是每个SQL数据库用户都应该掌握的.本文我们主要就介绍一下SQL Server日 ...
- 在win7-64bit环境下,boa-constructor 0.6.1 的palette面板中没有控件图标的解决方法
在win7-64bit环境下,boa-constructor 0.6.1 的palette面板中没有控件图标,空白一片.将面板窗口拉大,发现那些图标在很下面的位置,X轴的排列与正常状态一致. 软件环境 ...
- Selenium webdriver 操作日历控件
一般的日期控件都是input标签下弹出来的,如果使用webdriver 去设置日期, 1. 定位到该input 2. 使用sendKeys 方法 比如: 但是,有的日期控件是readonly的 比如1 ...
- 密码加SALT原理
原来这个技术叫SALT,以前我们经常这么用 ============================================================================== ...
- java视频转码博客
一下为找到的资料地址 http://lichen.blog.51cto.com/697816/162124 http://www.cnblogs.com/live365wang/archive/201 ...
- ABAP 弹窗案例
DATA: WL_ANSWER TYPE C. CALL FUNCTION 'POPUP_TO_CONFIRM' EXPORTING TEXT_QUESTION ...
- ABAP 仓库理货单导出
*&---------------------------------------------------------------------* *& Report *& ...
- 新浪微博授权失败:applications over the unaudited use restrictions
在用新浪微博授权第三方app时,授权失败,log显示 com.sina.weibo.sdk.exception.WeiboHttpException: {,"request":&q ...