#include<iostream>
using namespace std;
#include<string>
#define MAX 1000//学生信息的结构体
struct Student
{//学号string S_sno;//姓名string S_name;//性别int S_sex;//年龄int S_age;//家庭住址string S_address;//联系方式string S_phone;
};
//学生管理库的结构体
struct StudentNum
{Student arr[MAX];int size;
};//00 主界面
void MainMap()
{cout << "**************************" << endl;cout << "*****01、增加学生信息*****" << endl;cout << "*****02、删除学生信息*****" << endl;cout << "*****03、修改学生信息*****" << endl;cout << "*****04、显示学生信息*****" << endl;cout << "*****05、查找学生信息*****" << endl;cout << "*****00、退出学生系统*****" << endl;cout << "**************************" << endl;
}//01 增加学生信息
void AddStudent(StudentNum *stu)
{if (stu->size == MAX){cout << "学生信息库已满,无法添加!" << endl;}else{cout << "请输入学生学号:" << endl;cin >> stu->arr[stu->size].S_sno;cout << "请输入学生姓名:" << endl;cin >> stu->arr[stu->size].S_name;cout << "请输入学生性别:" << endl;cout << "1---男" << endl;cout << "2---女" << endl;cin >> stu->arr[stu->size].S_sex;while (1){if (stu->arr[stu->size].S_sex == 1 || stu->arr[stu->size].S_sex == 2)break;else{cout << "输入错误,请重新输入!" << endl;cin >> stu->arr[stu->size].S_sex;}}cout << "请输入学生年龄:" << endl;cin >> stu->arr[stu->size].S_age;cout << "请输入学生家庭住址:" << endl;cin >> stu->arr[stu->size].S_address;cout << "请输入学生联系方式:" << endl;cin >> stu->arr[stu->size].S_phone;}stu->size++;cout << "输入成功!" << endl;system("pause");system("cls");
}
//02 删除学生信息 按学号删除学生
void DeleteStudent(StudentNum*stu)
{string sno;cout << "请输入删除学生的学号:" << endl;cin >> sno;int temp = 0;if (stu->size == 0)//判断stu里面有无数据cout << "删除失败!" << endl;for (int i = 0; i < stu->size; i++){if (stu->arr[i].S_sno == sno){temp = i;}elsecout << "查无此人!" << endl;}if (temp != stu->size - 1)//判断temp是不是最后一个值{for (int i = temp; temp < stu->size; i++){stu->arr[i] = stu->arr[i + 1];}}stu->size--;system("pause");system("cls");
}//03 修改学生信息 按学号修改学生
void AlterStudent(StudentNum* stu)
{string sno;cin >> sno;int temp = 0;cout << "请输入要修改的学生学号:" << endl;for (int i = 0; i < stu->size; i++){if (stu->arr[i].S_sno == sno){temp = i;}elsecout << "查无此人!" << endl;}cout << "请输入要修改的信息:" << endl;cout << "1、学号" << endl;cout << "2、姓名" << endl;cout << "3、性别" << endl;cout << "4、年龄" << endl;cout << "5、家庭住址" << endl;cout<<"6、联系方式" << endl;int n;//输入的选项cin >> n;switch (n){case 1:cin >> stu->arr[temp].S_sno;break;case 2:cin >> stu->arr[temp].S_name;break;case 3:cin >> stu->arr[temp].S_age;break;case 4:cin >> stu->arr[temp].S_age;break;case 5:cin >> stu->arr[temp].S_address;break;case 6:cin >> stu->arr[temp].S_phone;break;}}
//04 显示学生信息
void ShowStudent(StudentNum* stu)
{if (stu->size == 0)cout << "无学生信息!" << endl;else{for (int i = 0; i < stu->size; i++){cout << "学号:" << stu->arr[i].S_sno << "\t"<< "姓名:" << stu->arr[i].S_name << "\t";if (stu->arr[i].S_sex == 1)cout << "性别:男" << "\t";elsecout << "性别:女" << "\t";cout << "性别:" << stu->arr[i].S_sex << "\t"<< "年龄:" << stu->arr[i].S_age << "\t"<< "家庭住址:" << stu->arr[i].S_address << "\t"<< "联系方式:" << stu->arr[i].S_phone << endl;}}system("pause");system("cls");
}
//05 查找学生信息 按学号
void FindStudent(StudentNum* stu)
{cout << "请输入学生学号:" << endl;string sno;for (int i = 0; i < stu->size; i++){if (stu->arr[i].S_sno == sno){cout << "学号:" << stu->arr[i].S_sno << "\t"<< "姓名:" << stu->arr[i].S_name << "\t";if (stu->arr[i].S_sex == 1)cout << "性别:男" << "\t";elsecout << "性别:女" << "\t";cout << "性别:" << stu->arr[i].S_sex << "\t"<< "年龄:" << stu->arr[i].S_age << "\t"<< "家庭住址:" << stu->arr[i].S_address << "\t"<< "联系方式:" << stu->arr[i].S_phone << endl;}elsecout << "查无此人!" << endl;}system("pause");system("cls");
}int main()
{StudentNum a;a.size = 0;//初始化个数while (1){MainMap();int n;//选项cin >> n;switch (n){case 01:AddStudent(&a);break;case 02:DeleteStudent(&a);break;case 03:AlterStudent(&a);break;case 04:ShowStudent(&a);break;case 05:FindStudent(&a);break;case 00:cout << "欢迎再次使用!" << endl;return 0;break;}}system("pause");return 0;
}

C++背景实现 学生管理系统(添加、显示、删除、修改)相关推荐

  1. 用Java中的HashSet写一个学生管理系统(添加、删除、修改、查询学生信息)

    不废话,上代码: 先创建一个Student类: public class Student {private String id;private String name;private String m ...

  2. 学生管理系统(添加、查看、删除、修改学生信息)

    1.2 学生管理系统实现思路 定义学生类 主界面的代码编写 添加学生的代码编写 查看学生的代码编写 删除学生的代码编写 修改学生的代码编写 1.3 定义学生类 学生类: Student 成员变量: 学 ...

  3. C++阶段02笔记【通讯录管理系统 完整代码(系统需求、创建项目、添加/显示/删除/查找/修改/清空)】

    C++| 匠心之作 从0到1入门学编程[视频+课件+笔记+源码] 目录 01.系统需求 02.创建项目 2.1 创建项目 2.2 添加文件 03.菜单功能 04.退出功能 05.添加联系人 5.1 设 ...

  4. 指定查找区间,查找学生姓名并显示是否修改成功

    首先需要创建两个类(面向对象OO的方式实现): 一个是Student,该类主要的代码: String [] names = new String [5]; //指定位置查找学生信息public boo ...

  5. Python基础day05【函数应用:学生管理系统、拆包、今日总结】

    视频.源码.课件.软件.笔记:超全面Python基础入门教程[十天课程]博客笔记汇总表[黑马程序员] Python基础day05[函数(函数传参的两种形式.函数形参).拆包.引用.可变与不可变类型.引 ...

  6. java 学生管理系统

    此案例编写了一个学生管理系统,实现对学生的添加,删除,修改,和查询功能. 此案例分为Student与Test两类 Student类 1.此类定义了四个变量 2.首先创建空参数构造方法 3.再创建带有参 ...

  7. java与数据库综合实训_JAVA数据库学生管理系统实训报告

    <JAVA数据库学生管理系统实训报告>由会员分享,可在线阅读,更多相关<JAVA数据库学生管理系统实训报告(43页珍藏版)>请在人人文库网上搜索. 1.实训报告实训名称:学生成 ...

  8. 学生管理系统(课程设计附带源码)

    1. 问题要求及任务描述 1.1. 题目要求 学生管理系统 对学生信息管理系统,要求完成以下基本任务: 改写程序为良好程序风格(文档注释,函数注释,语句注释). 将功能补充完全(基于文件处理,完成刷新 ...

  9. 综合案例----学生管理系统

    学生类 package studentsystem;public class Student {private String id;private String name;private int ag ...

最新文章

  1. 成为多编程语言人才的诀窍你想知道吗
  2. Apache ZooKeeper - 使用ZK实现分布式锁(非公平锁/公平锁/共享锁 )
  3. Js代码执行 变量的值 运算 变量提升
  4. redis实现session共享,哨兵
  5. 使用JetBrains dotMemory 4.0分析内存
  6. pip download timeout 下载慢,超时解决方法
  7. Android Studio 使用教程(2)----新建工程
  8. linux修改私钥的密码,linux使用密钥+密码登录ssh(centos7)
  9. 双层板在哪层覆铜_多层板的生产过程,与双层板有何不同?
  10. haimeiktv服务器系统,海媚 Haimei KTV8001 智能网络效果器
  11. 爬虫初学——爬取京东商品的评论(二)
  12. 如何查看路由器中的宽带密码
  13. itext实现横向pdf打印
  14. 对于electron-react-boilerplate(ERB)的学习笔记
  15. Selenium显示等待和隐式等待
  16. 迁移学习概述(Transfer Learning)
  17. 智能手环方案开源(含源码,原理图,APP,通信协议等) ...
  18. QT中的setAttribute()用法
  19. 计算机如何共享电视,win7系统电视共享视频的操作方法
  20. 002-CANoe 10.0 SP3 软件和CAN卡的配置笔记

热门文章

  1. 史上最难面试,没有之一
  2. 制作网页生日礼物送男朋友
  3. 微软Xbox服务器太烂,国行Xbox One给跪了!微软Xbox Live竟压根没架设国服
  4. 勇者斗恶龙question
  5. HDU 4398 whosyourdaddy 精确覆盖,允许重复覆盖
  6. 女人嫁给你,是让你疼的(转载+补充)
  7. oracle内部异常,IIS不定期Crash和Oracle“未处理的内部错误(-2)”的问题分析
  8. Wigner-Ville 分布
  9. DirectShow下载(支持Win10 64位系统)
  10. 管理之困:消逝的工作热情