#include #include#include#includeusing namespace std;const long o = 1000;class person {public: friend void addperson(person zhu[]); friend void showperson(person zhu[]); friend void delperson(person zhu[]); friend void findperson(person zhu[]); friend void modperson(person zhu[]); friend void clean(person zhu[]); friend void paixuroom(person zhu[]); friend void wscj(person zhu[]); friend void paixuwscj(person zhu[]); friend void write(person zhu[],int n); friend int read(person zhu[]); string name_; bool sex_; int age_; string number_; int room_; int wscj_;}zhu[o];void addperson(person zhu[]) { int nowall = 0; cout << "请输入姓名" << endl; cin >> zhu[nowall].name_; cout << "请输入性别" << endl; cout << "1男0女" << endl; cin >> zhu[nowall].sex_ ; cout << "请输入年龄" << endl; cin >> zhu[nowall].age_ ; cout << "请输入电话号码" << endl; cin >> zhu[nowall].number_ ; cout << "请输入门牌号(三位数)" << endl; cin >> zhu[nowall].room_ ; zhu[nowall].wscj_ = 100; write(zhu, nowall); nowall++; cout << "卫生成绩默认为100" << endl; cout << "添加成功" << endl; system("pause"); system("cls");}void showperson(person zhu[]) { int nowall = read(zhu); if (nowall == 0) cout << "还未录入学生信息!" << endl; else { for (int i = 0; i < nowall; ++i) { cout << "姓名 " << setw(5)<<zhu[i].name_ << '\t'; cout << "年龄 " << setw(3) << zhu[i].age_<< '\t'; cout << "电话号码 " << setw(13) << zhu[i].number_<< '\t'; cout << "性别 " << setw(3) << (zhu[i].sex_ ?"男":"女") << '\t'; cout << "门牌号 " << setw(5) << zhu[i].room_ << '\t'; cout << "卫生成绩 " << setw(5) << zhu[i].wscj_<<endl; } }cout << "总学生人数为:"<<nowall << endl; system("pause"); system("cls");}int chazhao(person zhu[],string name){ int nowall = read(zhu); for (int i = 0; i < nowall; ++i) { if (zhu[i].name_ == name) { return i; } } return -1;}void delperson(person zhu[]){ int nowall = read(zhu); if (nowall == 0) cout << "还未录入学生信息!" << endl; else cout << "请输入被删除学生的姓名" << endl; string name; cin >> name; int ret=chazhao(zhu, name); if (ret != -1) { for (int i = ret; i < nowall; ++i) zhu[i] = zhu[i + 1]; --nowall; cout << "删除成功" << endl; } else cout << "查无此人" << endl; system("pause"); system("cls");}void findperson(person zhu[]){ int nowall = read(zhu); if (nowall == 0) cout << "还未录入学生信息!" << endl; else cout <<"请输入要查找学生的姓名"<< endl; string name; cin >> name; int ret = chazhao(zhu, name); if (ret != -1) { cout << "姓名 " << setw(5) << zhu[ret].name_ << '\t'; cout << "年龄 " << setw(3) << zhu[ret].age_ << '\t'; cout << "电话号码 " << setw(13) << zhu[ret].number_ << '\t'; cout << "性别 " << setw(3) << (zhu[ret].sex_ ? "男" : "女") << '\t'; cout << "门牌号 " << setw(5) << zhu[ret].room_ << '\t'; cout << "卫生成绩 " << setw(5) << zhu[ret].wscj_ << endl; } else cout << "查无此人" << endl; system("pause"); system("cls");}void modperson(person zhu[]) { int nowall = read(zhu); if (nowall == 0) cout << "还未录入学生信息!" << endl; else cout << "请输入要修改学生的姓名" << endl; string name; cin >> name; int ret = chazhao(zhu, name); if (ret != -1) { char name[10]; cout << "请输入姓名" << endl; cin >> name; zhu[ret].name_ = name; cout << "请输入性别" << endl; cout << "1男0女" << endl; bool sex; cin >> sex; zhu[ret].sex_ = sex; cout << "请输入年龄" << endl; int age; cin >> age; zhu[ret].age_ = age; cout << "请输入电话号码" << endl; char* number = new char[12]; cin >> number; zhu[ret].number_ = number; cout << "请输入门牌号(三位数)" << endl; int room; cin >> room; zhu[ret].room_ = room; cout << "修改成功!" << endl; } else cout << "查无此人" << endl; system("pause"); system("cls");}void clean(person zhu[]){ int nowall = read(zhu); if (nowall == 0) cout << "还未录入学生信息!" << endl; else cout << "确定要清空所有学生信息吗?" << endl; cout << "确定输入 1 取消输入 0" << endl; bool s; cin >> s; if (s != 0) { nowall = 0; cout << "清空成功!" << endl; } system("pause"); system("cls");}void wscj(person zhu[]){ int nowall = read(zhu); cout << "请输入要修改卫生分数的门牌号" << endl; int n, m; cin >> n; for (int i = 0; i < nowall; ++i) { if (zhu[i].room_ == n) { cout << "请输入要修改多少卫生分数" << endl; cin >> m; break; }else cout << "未找到此宿舍!" << endl; } for (int i = 0; i < nowall; ++i) { if (zhu[i].room_ == n) { zhu[i].wscj_ += m; cout << "修改成功!" << endl; continue; } } system("pause"); system("cls");}void paixuroom(person zhu[]){ int nowall = read(zhu); if (nowall == 0) cout << "还未录入学生信息!" << endl; else cout << "按房间号由低到高排序" << endl; int n; string s; bool x; for (int j = 0; j < nowall-1; ++j) { for (int i = 0; i < nowall-j-1; ++i) { if (zhu[i].room_ > zhu[i + 1].room_) { n = zhu[i + 1].age_; zhu[i + 1].age_ = zhu[i].age_; zhu[i].age_ = n; n = zhu[i + 1].room_; zhu[i + 1].room_ = zhu[i].room_; zhu[i].room_ = n; n = zhu[i + 1].wscj_; zhu[i + 1].wscj_ = zhu[i].wscj_; zhu[i].wscj_ = n; s = zhu[i + 1].name_; zhu[i + 1].name_ = zhu[i].name_; zhu[i].name_ = s; s = zhu[i + 1].number_; zhu[i + 1].number_ = zhu[i].number_; zhu[i].number_ = s; x = zhu[i + 1].sex_; zhu[i + 1].sex_ = zhu[i].sex_; zhu[i].sex_ = x; } } } for (int i = 0; i < nowall; ++i) { cout << "姓名 " << setw(5) << zhu[i].name_ << '\t'; cout << "年龄 " << setw(3) << zhu[i].age_ << '\t'; cout << "电话号码 " << setw(13) << zhu[i].number_ << '\t'; cout << "性别 " << setw(3) << (zhu[i].sex_ ? "男" : "女") << '\t'; cout << "门牌号 " << setw(5) << zhu[i].room_ << '\t'; cout << "卫生成绩 " << setw(5) << zhu[i].wscj_ << endl; } cout << "排序成功!" << endl; system("pause"); system("cls");}void paixuwscj(person zhu[]){ int nowall = read(zhu); if (nowall == 0) cout << "还未录入学生信息!" << endl; else cout << "按卫生成绩由高到低排序" << endl; int n; string s; bool x; for (int j = 0; j < nowall - 1; ++j) { for (int i = 0; i < nowall - j - 1; ++i) { if (zhu[i].room_ < zhu[i + 1].room_) { n = zhu[i + 1].age_; zhu[i + 1].age_ = zhu[i].age_; zhu[i].age_ = n; n = zhu[i + 1].room_; zhu[i + 1].room_ = zhu[i].room_; zhu[i].room_ = n; n = zhu[i + 1].wscj_; zhu[i + 1].wscj_ = zhu[i].wscj_; zhu[i].wscj_ = n; s = zhu[i + 1].name_; zhu[i + 1].name_ = zhu[i].name_; zhu[i].name_ = s; s = zhu[i + 1].number_; zhu[i + 1].number_ = zhu[i].number_; zhu[i].number_ = s; x = zhu[i + 1].sex_; zhu[i + 1].sex_ = zhu[i].sex_; zhu[i].sex_ = x; } } } for (int i = 0; i < nowall; ++i) { cout << "姓名 " << setw(5) << zhu[i].name_ << '\t'; cout << "年龄 " << setw(3) << zhu[i].age_ << '\t'; cout << "电话号码 " << setw(13) << zhu[i].number_ << '\t'; cout << "性别 " << setw(3) << (zhu[i].sex_ ? "男" : "女") << '\t'; cout << "门牌号 " << setw(5) << zhu[i].room_ << '\t'; cout << "卫生成绩 " << setw(5) << zhu[i].wscj_ << endl; } cout << "排序成功!" << endl; system("pause"); system("cls");}void write(person zhu[],int n) { ofstream dobe; dobe.open("..\date.txt", ios::out|ios::binary); if (!dobe) { cout << "无法打开文件!" << endl; abort(); } int nowall = n; dobe << nowall << endl << endl; for (int i = 0; i < nowall; ++i) { dobe <<" " << zhu[i].name_ << " " << " " << zhu[i].age_ <<" " <<" " << zhu[i].number_ << " " << " " <<zhu[i].sex_ << " " << " " << zhu[i].room_ << " " << " " << zhu[i].wscj_ << endl; } dobe.close();}int read(person zhu[]) { ifstream f; f.open("..\date.txt", ios::in | ios::binary); if (!f) { cout << "无法打开文件!" << endl; abort(); } int c; f.seekg(0); f >> c; for (int i = 0; i < c; ++i) { f >> zhu[i].name_ >> zhu[i].age_ >> zhu[i].number_ >> zhu[i].sex_ >> zhu[i].room_ >> zhu[i].wscj_ ; } f.close(); return c;}int main(){ person zhu; int nowall = read(&zhu); int opt; while (true) { cout << endl; cout << "淮阴工学院学生宿舍信息管理系统" << endl; cout << " =========================="<<endl; cout << " *** 1.录入学生信息 ***" << endl; cout << " *** 2.修改学生信息 ***" << endl; cout << " *** 3.删除学生信息 ***" << endl; cout << " *** 4.学生信息查询 ***" << endl; cout << " *** 5.显示所有学生信息 ***" << endl; cout << " *** 6.按卫生成绩排序 ***" << endl; cout << " *** 7.清空学生信息 ***" << endl; cout << " *** 8.修改卫生成绩 ***" << endl; cout << " *** 9.按房间号排序 ***" << endl; cout << " *** 0.退出系统 ***" << endl; cout << " ==========================" << endl; cout << endl; cout << " 请选择(1-9,0:退出):"; cin >> opt; switch (opt) { case 1: addperson(&zhu); write(&zhu, nowall); break; case 2: modperson(& zhu); write(&zhu,nowall); break; case 3: delperson(&zhu); write(&zhu, nowall); break; case 4: findperson( & zhu); break; case 5: showperson(&zhu); break; case 6: paixuwscj(&zhu); break; case 7: clean(&zhu); write(&zhu, nowall); break; case 8: wscj(&zhu); write(&zhu, nowall); break; case 9: paixuroom(&zhu); break; case 0: exit(0); default: cout << "输入选项不正确!请重新输入!" << endl; system("pause"); system("cls"); break; } }}
关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
大🔥能帮我看看有什么问题吗,我运行除了第一个功能都用不了。
收起
- 写回答
- 好问题 0 提建议
- 关注问题
微信扫一扫点击复制链接分享
- 邀请回答
- 编辑 收藏 删除 结题
- 收藏 举报
2条回答 默认 最新
- 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
不甘_ 2022-05-13 17:21关注题主发的代码风格真是不拘小杰啊
本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报
微信扫一扫点击复制链接分享
评论按下Enter换行,Ctrl+Enter发表内容
报告相同问题?
提交
- 2025-09-27 13:46黑客三更的博客 【计算机专业转型指南】3招助你从普通学生逆袭校园大神,未毕业即实现经济独立:1️⃣ 跳出课本框架,通过GitHub实战、CTF比赛积累项目经验;2️⃣ 高效利用水课时间专攻网安/Burp Suite等实用技能;3️⃣ 选择网络...
- 2020-01-20 16:37会议之眼的博客 会议之眼A类、CCF A类顶会,年度编程语言原理专题讨论会POPL 2020(Principles of Programming Languages)今日召开。大会收录的68篇论文已收集整理,作为合集推送,详情请阅读 软件工程顶会POPL 2020合集共68篇...
- 2026-01-07 01:19知乎机构号团队的博客 保持了原函数的接口不变 ### 4.2 工作助手:提升效率的工具 写代码、写文档、分析数据,它都能帮上忙: **代码调试**: 我:这段Python代码有什么问题? def find_duplicates(numbers): seen = {} duplicates = [] ...
- 2025-06-24 02:22李肖遥的博客 我认为缩进一定要有,而且是一定要对齐的,但是至于是一个tab,两个空格、四个空格,8个空格,这些不是问题的关键,关键是如果原来的代码是8个空格缩进或者没有缩进,你在原来的代码上添加代码,就应该遵循原来代码...
- 2026-01-11 08:39moonbeamfalcon67的博客 本文介绍了如何在星图GPU平台上自动化部署Nanbeige4.1-3B 3B参数级通用小语言模型,以构建本地化AI编程助手。该模型能够根据自然语言描述,快速生成Python函数代码等实用程序,有效辅助开发者的日常编程工作,提升...
- 2016-03-31 16:48孤饮独醉的博客 1. 图形处理:有PIL、Tkinter等图形库支持,能方便进行图形处理。 2. 数学处理:NumPy扩展提供大量与许多标准数学库的接口。 3. 文本处理:python提供的re模块能支持正则表达式,还提供SGML,XML分析模块,许多...
- 2021-06-22 16:52编程领域的博客 我大学读的旅游管理专业(选择这个专业是想着好歹和旅游有关系,以后可以出去玩,但是现实~~),毕业后在一家大型旅游景区工作。时间如白驹过隙,从工作热情奋进到懈怠,也不过4年时间,一成不变的工作内容,丝毫不...
- 2025-06-16 04:17嵌入式Linux,的博客 我认为缩进一定要有,而且是一定要对齐的,但是至于是一个tab,两个空格、四个空格,8个空格,这些不是问题的关键,关键是如果原来的代码是8个空格缩进或者没有缩进,你在原来的代码上添加代码,就应该遵循原来代码...
- 2026-01-12 14:57NightshadeRaven21的博客 本文介绍了如何在星图GPU平台上自动化部署Phi-3-mini-128k-instruct镜像,以快速搭建一个轻量级AI助手。该平台简化了部署流程,用户可便捷地利用该模型处理多语言混合指令,例如在编程学习中,它能高效地理解并生成...
- 2025-12-28 03:33初雪CH的博客 本文介绍了如何在星图GPU平台上自动化部署STEP3-VL-10B多模态视觉语言模型(阶跃星辰)。该平台简化了部署流程,用户可快速启动该模型,并通过其直观的WebUI进行多轮图文对话,典型应用场景包括上传产品图片并让AI...
- 2025-10-18 00:19green的博客 本文对四大主流编程大模型o1-preview、o1-mini、ChatGPT-4o和Claude 3.5 Sonnet进行了实战测评。通过代码生成、优化、解读及转码等多项编程任务对比,深入分析了各模型在工程严谨性、代码简洁性、解释详尽度及响应...
- 2020-04-08 20:10Febin的博客 虽然IT行业已不再是一个新兴行业,但其在很多外行人眼中仍然是神秘且高大上的存在。他们认为IT就是很高深的一门技术,其门槛是普通人望尘莫及的。然而,这里我要告诉你的是,现在是2020年了,若放在10多年前,你对IT...
- 2021-08-07 21:26爱分享的板栗老哥的博客 传闻在那不遥远的地方,有一片由0组成的世界,突然有一天,在这些0里突然出现了一个1,而后这个1越来越多,似乎是在某种规则下,这片0和1的混沌中诞生了一个生灵,名曰汇编。只见这大神周身环绕着一道道规则道韵。似...
- 2020-11-03 08:08程序员黑叔的博客 以下问题分为「必问题」,和「大概率问题」,「小概率问题」 这个概率值是通过对面试的这10几个公司,做了全面的统计得出来的(「不具有普适性」) 有些问题大家都会,我就不贴答案了 必问题 必问题 必问题 1....
- 2026-01-17 08:01BronzeDragon44的博客 本文介绍了基于星图GPU平台自动化部署DeepSeek-R1-Distill-Qwen-1.5...该镜像开箱即用,支持一键部署与WebUI交互,适用于本地化AI应用开发、模型微调及轻量级代码生成等场景,显著降低个人开发者使用大模型的技术门槛。
- 2025-12-31 18:37息相吹的博客 本文介绍了如何在星图GPU平台上自动化部署gemma-3-12b-it高性能开源大语言模型(LLM)WebUI镜像,并展示了其在实际编程辅助中的应用。通过该平台,开发者可以快速搭建一个能够进行深度技术对话的AI助手,例如,它能...
- 2020-03-26 11:28Leon_George的博客 【摘要】本文主要讲述了网络编程的基本概念,包括各种协议、地址、套接字等,重点叙述了套接字的地址结构、操作函数及其编程方法和示例。
- 2018-08-06 21:16C语言学习部落的博客 前两天,有网友问了我一个关于C语言的问题,本着认真装逼的态度,我把大学时学过的C语言课本翻了一遍,终于找到了答案。整理后,现分享给大家! 一、C语言程序的结构认识 用一个简单的c程序例子,介绍c语言的基本...
- 2021-06-01 22:42公众号:方志朋的博客 点击上方“方志朋”,选择“设为星标”回复”666“获取新整理的面试资料2020,糟糕的开始一个本该搬砖的日子,却还在葛优躺虽说,3号到7号是法定休息日但各大公司还是不想辜负员工对搬砖...
- 2022-07-02 21:15「已注销」的博客 逆袭大学生的职业规划,想逆袭的大学生速速看过来,考研就业两不误
- 没有解决我的问题, 去提问