问题:建立一个简单链表,输出各结点中的数据。
这是原程序:#include
#include
using namespace std;
struct address
{
int n;
string name;
};
struct student
{
int num;
float score;
address dorm;
struct student* next;
};
int main()
{
student a, b, c, * head, * p;
a.num = 31001; a.score = 89.5; a.dorm.n = 1; a.dorm.name = "25舍";
b.num = 31003; b.score = 90; b.dorm.n = 2; b.dorm.name = "26舍";
c.num = 31007; c.score = 85; c.dorm.n = 3; c.dorm.name = "27舍";
head = &a;
a.next = &b;
b.next = &c;
c.next = NULL;
p = head;
do {
cout << p->num << " " << p->score << " " << p->dorm.n << " " << p->dorm.name << endl;
p = p->next;
} while (p != NULL);
return 0;
}
重点:现在对此程序进行修改,将该程序用new运算符修改成能够按照输入的n值,动态生成和输入包含n个学生信息的链表(包含地址)。
其实n值可以事先在程序里定义好的,但是我用New运算符怎么都输出不了结果。请求大神能在上面程序的基础上做一些修改使其满足条件。谢谢!!