C++中怎么用数组同时存放多个字符串呢?

在编写学生学分成绩处理系统时,需要将每个学生的选课代码一一存放,每个学生有若干个学科代码,且数目几乎不一样,怎样用数组去存放一个学生的选课的课程名信息呢?谢谢指点……
最好用个简单的例子说明一下啊
我需要把多个字符串统一存放,统一处理,用什么方法呢?
十分谢谢……

方法一:
将学科代码和课程名封装在一个结构体内,用一个链表来管理学科这一环,学校有多少学科全部添加进去,作为一个全局对象来使用,以后哪个学生只要根据他的学科代码去找课程名信息就可以了,当然前提是你的链表要提供功能函数。

方法二:
你不愿意写链表,那么就用 string 数组为存放课程名信息,但是这样要做到学科代码和课程名的一一对应,是很麻烦的。

所以,我建议将数据库原理的思想搬过来,将一一对应关系的字段“捆绑”在一起。
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2016-11-16
虽然不是很推荐这样做,但是 数组即为一个连续的内存空间,只要保证多个字符串不相互影响,是可以的。
char str[255] = {0};
char *s1 = str;
char *s2 = str + 99;

这时,s2就从str的第100个字符开始存储了,那么前100个字符就可以当做一个小字符串s1,后面的也可以单独作为一个字符串s2了,但是如果s1超过了100个字符,那么就会影响到其他字符串,所以不建议这样做。
第2个回答  推荐于2016-05-24
1.动态结构链表
2.动态数组,课程不统一,可以使用动态方式去保存

比如
class Student
{
private:
long Id;
string name;
long course_id;
int course_count;
string *m_pCourse;

public:
void audit();
};本回答被提问者采纳
第3个回答  2009-03-28
用一个类嘛,不就把所有的成绩给包括进去了,再不会再叫我。
第4个回答  2009-03-28
struct XX
{
type YY;
type ZZ;
.........
};

vector<XX> data;
相似回答