zoukankan      html  css  js  c++  java
  • c++ 双向链表

    双向链表结构定义
         struct  stu_data
         {
             char name[256];//学生名字
             struct mytime stuTime;//签到时间
             struct  stu_data* front;  //指向前一个结点
             struct  stu_data* back;  //指向后一个结点
    
         }  ;
    建立双向链表
    头指针Head
    尾部指针Tail
    插入结点
     
     //建立头结点
        Head=tail=p= malloc(sizeof( struct stu_data)); //
         memset(stu,0,sizeof( struct stu_data)); //初始化内存区域
    
    //尾部插入新结点 操作
           stu= malloc(sizeof( struct stu_data)); //分配结点内存空间
           memset(stu,0,sizeof( struct stu_data)); //初始化内存区域
       //结点数据填充。。。
             stu->front=p; //新结点指向前驱
             stu->back=NULL; //新结点尾指针置空
             p->back=stu; //前驱结点back指针指向新结点
             p=stu; //重要移动标志指针
             tail=stu;//可有可无的
    A= Head      front                 back
    0    0    0    D    B
    
      B
    0    exit    e    A    C
      C
    0    0    0    B    D
     D=stu=p=tail
    0    exit    0    C    A

    代码

     int main(int argn,char* argv[])// int a[1]//a[0]
     {       
        
    
         struct mytime
         {   
             //char name[256];
             int hour;//
             int min; //
             int sec; //
         };
    
         struct  stu_data
         {
             char name[256];//学生名字
             struct mytime stuTime;//签到时间
             struct  stu_data* front; //指向前一个结点
             struct  stu_data* back;  //指向后一个结点
    
         }  ;
         struct mytime t2;
         struct stu_data *stu;
        // struct stu_data stu[50];
         time_t t;// long int
         struct tm * timfo;
         int i;
     
         stu=malloc(sizeof( struct stu_data)); //256+12=268
         printf("%d 
    ", sizeof( struct stu_data));
         getchar();
         
         //for (i=0;i<3;i++)
         //{
            // scanf("%s",&stu[i].name);
            // time(&t);
            // timfo= localtime(&t); //取当前系统时间 
      //       stu[i].stuTime.hour=timfo->tm_hour;//// stu[i].stuTime.min=timfo->tm_min;//// stu[i].stuTime.sec=timfo->tm_sec;////}
         ////显示学生 到校时间
         //for (i=0;i<3;i++)
         //{
            // 
            // time(&t);
            // timfo= localtime(&t); //取当前系统时间 
            // printf("%s,到校时间:%d时%d分%d秒
    ",stu[i].name, stu[i].stuTime.hour, stu[i].stuTime.min, stu[i].stuTime.sec);
    
    
    
         //}
     
    
        getchar();
        getchar();
        
        return 0;
    }
  • 相关阅读:
    Webform中Repeater控件--绑定嵌入C#代码四种方式
    webform中listbox运用,2个相互传值练习1:
    webform基础介绍及页面传值(session,cookie)、跳转页面
    Webform 常用控件
    使用VS建立Web网站及IIS
    linq to object
    linq to sql用partial扩展属性,创建一个部分类(用于多表连接)
    LINQ 图解
    Linq to sql介绍及增、删、改、查
    数据库操作
  • 原文地址:https://www.cnblogs.com/whzym111/p/6139855.html
Copyright © 2011-2022 走看看