zoukankan      html  css  js  c++  java
  • c++ 简单静态链表

           所有结点(结构体变量)都是在程序中定义的,不是临时开辟的,也不能用完后释放,这种链表称为静态链表。对各结点既可以通过上一个结点的next指针去访问,也可以直接通过结构体变量名s1, s2, s3去访问。

          动态链表则是指各结点是可以随时插入和删除的,这些结点并没有变量名,只能先找到上一个结点,才能根据它提供的下一结点的地址找到下一个结点。只有提供第一个结点的地址,即头指针head,才能访问整个链表。如同一条铁链一样,一环扣一环,中间是不能断开的。

    #include <QCoreApplication>
    #include <iostream>
    
    using namespace std;
    
    struct Student{
       long num;
       float score;
       struct Student *next;
    };
    
    int main(int argc, char *argv[])
    {
        QCoreApplication a(argc, argv);
    
        Student s1,s2,s3;
        s1.num=1001;
        s1.score=80;
    
        s2.num=1002;
        s2.score=90;
    
        s3.num=1003;
        s3.score=99;
    
        Student *head;
        Student *p;
    
        head=&s1;
        s1.next=&s2;
        s2.next=&s3;
        s3.next=NULL;
        p=head;
    
        while(p!=NULL)
        {
            cout<<p->num<<"score:"<<p->score<<endl;
            p=p->next;//使p指向下一个结点
    
        }
    
    
    
        return a.exec();
    }
  • 相关阅读:
    超神头文件
    世界上还有比二分更容易错的算法吗?
    【POJ 1734】Sightseeing trip
    P1303 A*B Problem
    P1601 A+B Problem(高精)
    P1051 谁拿了最多奖学金
    【P1025】数的划分
    P1005 矩阵取数游戏
    P1006 传纸条
    邮票问题
  • 原文地址:https://www.cnblogs.com/ike_li/p/7339622.html
Copyright © 2011-2022 走看看