| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1689 人关注过本帖
标题:我有编程问题求教,关于在类中使用结构体和结构数组。
只看楼主 加入收藏
veraxxrr
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2007-10-2
收藏
 问题点数:0 回复次数:5 
我有编程问题求教,关于在类中使用结构体和结构数组。

我要设计一个学生信息管理系统,用C++语言实现,但是不用链表,用数组和结构体的话怎么做呢,有点思路,但是不知道该怎么做了。
学生信息包括,姓名,性别,班级,学号,学生总数
要求能够逐个输入学生信息,可以追加,删除学生信息,可以查询学生信息
我的思路是设计一个类,基本如下,然后在public函数里面定义结构数组解决问题,但是发现有点走不通,请高人给指点一下,可以吗,顺便说一句,身边的女生没人想好好学编程,虽然以后不想做coding,但是我不想混日子,研究生想学点东西,只是刚看书两个月,以前也没怎么编过程序,这次是自己试着编的,水平很烂,请大家帮忙,谢谢啦
class Student //类Student
{
private:
struct student //学生信息结构体student
{
char sname[20];
char sgender[2];
int sclass;
char snum[4];
};
public:
void input(int &a);
void showall();
void inquire();
void add();
void dele();
static int sum;
Student();
~Student();
};

[此贴子已经被作者于2007-11-16 21:15:29编辑过]

搜索更多相关主题的帖子: 结构体 信息管理系统 学生 
2007-11-16 21:05
veraxxrr
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2007-10-2
收藏
得分:0 
补充一下要求,要用IO流将学生信息输入到文件中去

2007-11-16 21:06
StarWing83
Rank: 8Rank: 8
来 自:仙女座大星云
等 级:贵宾
威 望:19
帖 子:3951
专家分:748
注 册:2007-11-16
收藏
得分:0 

面向对象的抽象太弱。建议先设计好接口再说。以下是一点建议。
1 student结构体最好放外面。类里面只留一个student的指针以适合动态分配(你懒得管内存操作留一个数组也可以)
2 类是专门用来管理那个结构体的。如果没有要求可以直接使用STL的vector实现。如果要求自己写管理器的话可以参照数据结构中的线性表来做 忠告:管理器中最好不要有IO类的函数!因为主要是用来管理。所以类可以改名为std_list或者别的可以反映出功能的名字。如果使用vector可以写成
[CODE]typedef vector<student> std_list;
typedef vector<student>::iterator sl_iter;[/CODE]
如果怕copy的效率开销就用指针吧,具体可以上网查。STL的资料还是很多的~

3 IO输出建议使用单独的函数实现。可以有一个显示菜单的函数menu,然后调用类的实现最后显示或者存储。如果觉得文件操作太麻烦也可以把文件操作移到一个单独的函数中。但是不要把IO操作放到类里面去!(比如什么print函数啊,save函数啊,display函数啊什么的)


专心编程………
飞燕算法初级群:3996098
我的Blog
2007-11-17 13:33
zy860909
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2007-11-17
收藏
得分:0 
IO流我没好好学,爱莫能助
2007-11-17 14:46
veraxxrr
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2007-10-2
收藏
得分:0 
回复:(veraxxrr)补充一下要求,要用IO流将学生信息...

谢谢啦!!!


2007-11-20 21:37
szb123
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2007-11-20
收藏
得分:0 

呵呵

2007-11-20 21:48
快速回复:我有编程问题求教,关于在类中使用结构体和结构数组。
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020017 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved