为了账号安全,请及时绑定邮箱和手机立即绑定

数据结构萌新的问题

数据结构萌新的问题

C
南枭 2018-09-05 10:39:17
数据结构老师在给我们复习C语言时布置了一个实验,内容如图,由于没有学习过这一内容,故向大家请教。
查看完整描述

1 回答

已采纳
?
AAnonymous

TA贡献62条经验 获得超31个赞

这是个链表

#include <cstdio>

struct StudentNode {
    char name[10];
    int rank;
    int score;
    StudentNode *pNext;
    StudentNode() : name(""), rank(0), score(0), pNext(nullptr) {}
};

struct StudentLinkList {
    StudentNode *pHead;
    StudentLinkList() : pHead(new StudentNode) { }
    ~StudentLinkList() {
        StudentNode *node = pHead;
        while (node != nullptr) {
            StudentNode *tmp = node->pNext;
            delete node;
            node = tmp;
        }
    }
    void createLinkList(int n) {
        printf("creating linklist with %d nodes\n", n);
        StudentNode *node = pHead;
        StudentNode *tmp;
        for (auto i = 1; i <= n; ++i) {
            tmp = new StudentNode;
            printf("  >> input %dst node's infos: name, rank, score: ", i);
            scanf("%s%d%d", tmp->name, &(tmp->rank), &(tmp->score));
            node->pNext = tmp;
            node = tmp;
            tmp = nullptr;
        }
        printf("linklist created\n\n");
    }

    void showLinkList() {
        printf("display all elements of linklist\n  >> ");
        StudentNode *node = pHead;
        while (node->pNext != nullptr) {
            printf("| %s | %d | %d | --> ", node->pNext->name, node->pNext->rank, node->pNext->score);
            node = node->pNext;
        }
        printf("null\n\n");
    }
};

int main() {
    StudentLinkList linkList;
    linkList.createLinkList(3);
    linkList.showLinkList();
}

C:\Users\xxx\CLionProjects\Test\cmake-build-debug\Test.exe

creating linklist with 3 nodes

  >> input 1st node's infos: name, rank, score: WANG 1 65

  >> input 2st node's infos: name, rank, score: ZHANG 2 98

  >> input 3st node's infos: name, rank, score: LI 3 85

linklist created


display all elements of linklist

  >> | WANG | 1 | 65 | --> | ZHANG | 2 | 98 | --> | LI | 3 | 85 | --> null



Process finished with exit code 0


查看完整回答
1 反对 回复 2018-09-06
  • 1 回答
  • 0 关注
  • 708 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信