图2.12 选7,统计教师信息 4.学生水电费管理系统: 操作同教师水电费管理系统。
五、设计总结(可谈一谈本次课程设计的经验和体会)
课程设计,对于我们现在只学了些基础的知识的人来说确实是一个不小的挑战!我想对每个人都一样别人能做到的,我也能做到!从一个函数到很多函数的有机集合到多个类的使用,其中也经历了不少困惑与不知。但至少我现在做到了,终于战胜了自己对课程设计的恐惧,也收获了程序运行成功的喜悦,有付出,就有收获!!!
通过这学期对C++的学习总结,要把知识运用于这次的课程设计,发现还是有点不足,有点困难,学到用时方恨少,自己学的还不够精,不够深。对于一门技术来说,浅尝辄止是远远不够的。还好通过去网上搜索、去图书馆查找资料、请教老师同学等各种方式克服了一个又一个的困难。多样化的处理问题,才是成功之道,终于把设计给完成了!
学习的心态很关键,不懂了就要学着去用不同的方式去获取,补足自己,通过各种各样的方式,学着去请教别人和别人交流,做到不懂就问。相对来说,我的程序更简易,代码相对来说比较少,但却实现了大多数功能。简单易懂可行才是程序设计的本质,不是吗?把所学的运用于生活中,收获了那种成就感不言而喻的高兴。 至今我感慨颇多的应当是一些难以查出的错误,编译时查不出的错误,其被发现时很可能只是位置的错误,仅隔数行,这些微小的信息却极大地影响了整体的效果。这不仅存在于一个程序之中,因而我对于生活中的细节也有了改观,对于整体和局部的观念也有了更多的见解。
通过这次实践,我对编程有了新的理解,编程并不是像大多数人说的那样充满单调,乏味。一件东西的乐趣在于你能去接触去理解。我接触了,我理解了。让所学的运用于生活中,做到灵活运用,学有所成的兴奋是难得的宝贵。我在其中感悟到乐趣了,相信这是我编程高手之路的一个重要转折点。
六、参考文献
[1] 李兰, 任凤华. C++面向对象程序设计. 西安: 西安电子科技大学出版社, 2010
[2] 李兰, 任凤华. 《C++面向对象程序设计》实验指导及习题解析. 西安: 西安电子科技大学出版社, 2010
[3] 郑莉, 董渊. C++程序设计基础教程. 北京: 清华大学出版社, 2010 [4] 郑莉. C++程序设计基础教程学生用书. 北京: 清华大学出版社, 2010
七、附录
#include
public:
string num; //编号
string name; //姓名 string sex; //性别 int old; //年龄
double power; //用电量 double water; //用水量 double watermoney; //水费 double powermoney; //电费 string flag;//缴费标志 public:
Person(string n=\nm=\s=\d=0,double p=0,double w=0,double wm=0,double pm=0,string f=\否\构造函数 {
num=n; name=nm; sex=s; old=d; power=p; water=w;
watermoney=wm; powermoney=pm; flag=f; } };
int amount; //记录当前记录的个数 class Student:virtual public Person {
public:
string classrome; //班级 public:
Student(string n=\nm=\s=\d=0,double p=0,double w=0,string cr=\否\ :Person(n,nm,s,d,p,w,wm,pm,f) //构造函数 {
classrome=cr; }
void Input(); void Inputs(); void Output();
void Add(); //添加信息 void Search(); //查询信息 void Show(); //显示信息 void Compile(); //修改信息 void Delete(); //删除信息
void Total(); //数据统计 void Save(); //保存信息 void Read(); //读取信息 };
Student stu[MAX]; //学生对象数组 int cmp1(const void *a,const void *b) {
Student *c=(Student *)a; Student *d=(Student *)b; if(c->num >d->num) return 1; else return -1; }
void Student::Input() //输入学生信息 {
cout<<\请输入学号:\ cin>>num;
cout<<\请输入姓名:\ cin>>name;
cout<<\请输入性别:\ cin>>sex;
cout<<\请输入年龄:\ cin>>old;
cout<<\请输入班级:\ cin>>classrome;
cout<<\请输入本月用水量:\ cin>>water;
cout<<\请输入本月用电量:\ cin>>power;
if(water>10) //学生水电费一定额度限免 watermoney=(water-10)*0.5; if(power>10)
powermoney=(power-10)*0.5; }
void Student::Inputs() //输入学生信息 {
Input();
cout<<\是否已缴水电费:\ cin>>flag; }
void Student::Add()//添加学生信息 {
if(amount>=100) {
cout<<\用户已满!\
return; }
Student s;
cout<<\输入新添人员信息\ s.Input();
for(int i=0;i
cout<<\该编号的用户已存在!\ return; }
stu[amount]=s;
cout<<\添加成功!\ amount++; Save(); }
void Student::Search() //查询学生信息 {
if(amount==0) {
cout<<\当前系统无存储记录!\ return; }
int chioce;
cout<<\请选择查询方式:1.按姓名查询 2.按用水量查询 3.按用电量查询\ cin>>chioce; switch(chioce) {
case 1: {
string name;
cout<<\请输入要查找的姓名:\ cin>>name; int k=0;
cout<<\\编号\ \姓名\ \性别\ \年龄\ \班级\ \
<<\用水量\ \水费\ \用电量\<<\ \电费\ \缴费\
for(int i=0;i
if(stu[i].name==name) {
cout< < < if(k==0) cout<<\查无此人!\ }break; case 2: { cout<<\请输入要查找的用水量:\ double waters; cin>>waters; int k=0; cout<<\\编号\ \姓名\ \性别\ \年龄\ \班级\ \ <<\用水量\ \水费\ \用电量\<<\ \电费\ \缴费\ for(int i=0;i cout< < < cout<<\查无此用水量!\ }break; case 3: { cout<<\请输入要查找的用电量:\ double powers; cin>>powers; int k=0; cout<<\\编号\ \姓名\ \性别\ \年龄\ \班级\ \