用C++实现数据的管理功能
导读:收集整理的这篇文章主要介绍了用C++实现数据的管理功能,觉得挺不错的,现在分享给大家,也给大家做个参考。本文主要讲述了通过C++实现对数据的增加,删除,查询以及按规则排序。这里,我用学生数据管理来举个栗子:要求实现以下功能:1、信息录入:录...
收集整理的这篇文章主要介绍了用C++实现数据的管理功能,觉得挺不错的,现在分享给大家,也给大家做个参考。本文主要讲述了通过C++实现对数据的增加,删除,查询以及按规则排序。这里,我用学生数据管理来举个栗子:
要求实现以下功能:
1、信息录入:录入学生成绩信息(包括学生学号、姓名、各门课程的成绩等);
2、信息查询:输入学号,查询学生各门课程的成绩,并显示。
3、排序:按各门课程的成绩平均分进行排序,并显示。
4、信息删除与修改——输入学号,删除该学生的成绩信息。
分步实施:
1、初步完成总体设计,搭好框架,确定人机对话的界面,确定函数个数。
2、建立一个文件,将每位学生的信息写入文件中并能显示于屏幕上。
3、完成上述信息查询(学生学号、姓名等)、排序、信息删除与修改功能。
#include iostream> #include string.h> using namespace std; #define MAX 100class CStudent{ PRivate: char *name; // 姓名 bool sex; // 性别 CDate date; // 出生日期,类对象作数据成员 public: static int num; // 学生人数 CStudent(); void InputData(); friend void sort(); // 排序 friend void FindName(); // 按姓名查询 friend void Statistic(); // 按性别统计 friend void Display(); // 显示全部信息} stu[MAX]; int CStudent::num=0; //static 初始化 CStudent::CStudent() { } //构造函数// 输入信息void CStudent::InputData(){ int p; char s[41]; cout"请输入学生信息(NO."num"):\n"; cout"姓名:"; cin> > s; name=new char[strlen(s)+1]; strcpy(name,s); cout"性别(1-男,0-女):"; cin> > p; if (p) sex=true; else sex=false; cin> > date; //操作符重载-> istream & operator> > (istream & in,CDate & d) coutendl; } // 排序 根据data从小到大排序void Sort(){ int i,j,p,num; char *tn; bool ts; CDate td; num=CStudent::num; for(i=1; inum; i++) { p=i; for(j=i+1; j=num; j++) if (stu[j].datestu[p].date) p=j; //找到当前未排序元素中年龄最小的对象的下标 if (p==i) continue; //下面交换stu[i]和stu[p] tn=stu[i].name; stu[i].name=stu[p].name; stu[p].name=tn; ts=stu[i].sex; stu[i].sex=stu[p].sex; stu[p].sex=ts; td=stu[i].date; stu[i].date=stu[p].date; stu[p].date=td; } } // 按姓名查询void FindName(){ char name[41]; int i,num; cout"请输入姓名:"; cin> > name; num=CStudent::num; for(i=1; i=num; i++) if (strcmp(stu[i].name,name)==0) break; if (i> num) { cout"查无此人!"endlendl; return; } //如果查到了,显示学生信息 cout"姓名:"stu[i].nameendl; cout"性别:"; if (stu[i].sex) cout"男"endl; else cout"女"endl; cout"生日:"stu[i].dateendl; coutendl; } // 按性别统计void Statistic(){ int i,num,s1,s0; num=CStudent::num; s1=0; s0=0; for(i=1; i=num; i++) if (stu[i].sex==1)s1++; else s0++; cout"男生人数:"s1endl; cout"女生人数:"s0endl; coutendl; } // 显示全部信息void Display(){ int i,num; num=CStudent::num; for(i=1; i=num; i++) { coutstu[i].name"\t"; if (stu[i].sex) cout"男"; else cout"女"; cout"\t"stu[i].dateendl; } coutendl; } int main1(){ char *menu[]= { "","输入信息","排序","按姓名查询","按性别统计","显示全部信息","退出" } ; int i,p; bool end; end=false; while(!end) { for(i=1; i7; i++) couti" "menu[i]endl; cin> > p; swITch(p) { case 1: // 输入信息 CStudent::num++; stu[CStudent::num].InputData(); break; case 2: // 排序 Sort(); break; case 3: // 按姓名查询 FindName(); break; case 4: // 按性别统计人数 Statistic(); break; case 5: // 显示全部信息 Display(); break; case 6: // 退出 end=true; break; } } return 0; }
以上就是有关C++的数据管理实现的详细内容,更多请关注其它相关文章!
【推荐课程:C++视频教程】
以上就是用C++实现数据的管理功能的详细内容,更多请关注其它相关文章!
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 用C++实现数据的管理功能
本文地址: https://pptw.com/jishu/593456.html