#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
#include <stdarg.h>
#include <time.h> struct mytime
{
//char name[256];
int hour;//时
int min; //分
int sec; //秒
}; struct stu_data
{
char name[];//学生名字
int sex;//0女生,非0表男生
struct mytime stuTime;//签到时间
struct stu_data* front; //指向前一个结点
struct stu_data* back; //指向后一个结点 } ; //搜索 查询 struct stu_data * FindNode(struct stu_data* Head,char* Name)
{
struct stu_data * stu;
stu=Head->back;
do
{
if (strcmpi(stu->name,Name)==)//不区分大小写 判断相等
{
printf("%s,到校时间:%d时%d分%d秒\n",stu->name, stu->stuTime.hour, stu->stuTime.min, stu->stuTime.sec);
if (stu->sex)
{
printf(" 男");
}else printf(" 女");
return stu;
}
stu=stu->back;
} while (stu!=Head->back); return NULL;
} int main(int argn,char* argv[])// int a[1]//a[0]
{ struct mytime t2;
struct stu_data *stu,*p,*Head,*tail; time_t t;// long int
struct tm * timfo;
int i; //建立Head头结点
Head=p=tail=malloc(sizeof( struct stu_data)); //256+12=268
memset(p,,sizeof( struct stu_data));
strcpy(Head->name,"头结点"); do
{//插入新的结点
stu= malloc(sizeof( struct stu_data)); //
memset(stu,,sizeof( struct stu_data)); //初始化内存区域 //stu->back=NULL; //新结点尾指针置空
//p->back=stu; //前驱结点back指针指向新结点
//p=stu; //重要移动标志指针 stu->front=p; //新结点指向前驱 2
stu->back=NULL; //新结点尾指针置空
p->back=stu; //前驱结点back指针指向新结点
p=stu; //重要移动标志指针
tail=stu;//可有可无的 2 scanf("%s",&stu->name);
time(&t);
timfo= localtime(&t); //取当前系统时间
stu->stuTime.hour=timfo->tm_hour;//时
stu->stuTime.min=timfo->tm_min;//分
stu->stuTime.sec=timfo->tm_sec;//秒
//构建循环链表
Head->front=stu;
tail->back=Head; } while(strcmpi(stu->name,"exit")!=); //初始指针p 使他头结点Head
//stu=Head->back;
//do
//{
// printf("%s,到校时间:%d时%d分%d秒\n",stu->name, stu->stuTime.hour, stu->stuTime.min, stu->stuTime.sec); // stu=stu->back;
//} while (strcmpi(stu->name,"exit")); printf("\n\n 找到的结点地址:%x", FindNode(Head,"s2")); getchar();
getchar(); return ;
}

删除

c++ 双向链表 的查找和删除的更多相关文章

  1. SQL重复记录处理(查找,过滤,删除)

    SQL重复记录处理(查找,过滤,删除)     ID int    Title nvarchar(50)    AddDate datetime    数据  www.2cto.com     ID ...

  2. 有关文件夹与文件的查找,删除等功能 在 os 模块中实现

    最近在写的程序频繁地与文件操作打交道,这块比较弱,还好在百度上找到一篇不错的文章,这是原文传送门,我对原文稍做了些改动. 有关文件夹与文件的查找,删除等功能 在 os 模块中实现.使用时需先导入这个模 ...

  3. STL中vector的赋值,遍历,查找,删除,自定义排序——sort,push_back,find,erase

    今天学习网络编程,那个程序中利用了STL中的sort,push_back,erase,自己没有接触过,今天学习一下,写了一个简单的学习程序.编译环境是VC6.0         这个程序使用了vect ...

  4. 数据结构与算法->树->2-3-4树的查找,添加,删除(Java)

    代码: 兵马未动,粮草先行 作者: 传说中的汽水枪 如有错误,请留言指正,欢迎一起探讨. 转载请注明出处. 目录 一. 2-3-4树的定义 二. 2-3-4树数据结构定义 三. 2-3-4树的可以得到 ...

  5. 【数据结构】——搜索二叉树的插入,查找和删除(递归&非递归)

    一.搜索二叉树的插入,查找,删除 简单说说搜索二叉树概念: 二叉搜索树又称二叉排序树,它或者是一棵空树,或者是具有以下性质的二叉树 若它的左子树不为空,则左子树上所有节点的值都小于根节点的值 若它的右 ...

  6. oracle中查找和删除重复记录的几种方法总结

    平时工作中可能会遇到当试图对库表中的某一列或几列创建唯一索引时,系统提示 ORA-01452 :不能创建唯一索引,发现重复记录. 下面总结一下几种查找和删除重复记录的方法(以表CZ为例): 表CZ的结 ...

  7. Linux系统中查找、删除重复文件,释放磁盘空间。

    在Linux系操作系统中查找并删除重复文件的方法的确有很多,不过这里介绍的是一款非常简单实用的软件FSlint.FSlint是一个重复文件查找工具,可以使用它来清除不必要的重复文件,笔者经常使用它来释 ...

  8. linux中find与rm实现查找并删除文件

    find命令: find . -name '*.log' #查找当前目录下的log文件 查找并删除: find . -name '*.log' -type f -print -exec rm -rf ...

  9. Dom4j 操作, 节点查找 添加 删除 修改 。。。xPath

    转: Dom4j 操作, 节点查找 添加 删除 修改 ...xPath 2013年11月28日 10:48:59 今晚打酱油8 阅读数:8506更多 个人分类: JavaWeb   版权声明:本文为博 ...

随机推荐

  1. 在Windows2003下如何查看IIS站点中对应的PID值

    分享:查看IIS站点中对应的PID值 在Win2003下,提供了一个命令,可以方便的查看.cmd -> iisapp -a 显示W3WP.exe PID: 1264 AppPoolID: hxW ...

  2. Linux 加载卷组

    root 用户下执行: vgchange -ay vgdatamount /u01 vgdisplay 查看卷组

  3. Oracle EBS 更新客户地点

    --更新客户地点 declare x_return_status ); x_msg_count NUMBER; x_msg_data ); x_profile_id NUMBER; l_locatio ...

  4. oracle使用索引和不使用索引性能分析

    首先准备一张百万条数据的表,这样分析数据差距更形象! 下面用分页表数据对表进行分析,根据EMP_ID 字段排序,使用索引和不使用索引性能差距! sql查询语法准备,具体业务根据具体表书写sql语法: ...

  5. datediff

    DateDiff()是计算机函数. 中文名 日期比较函数 外文名 DateDiff() 作    用 得 出两个日期之间的间隔 用    途 返回两个日期之间的差值 允许数据类型 timeinterv ...

  6. SQL语句还原数据库并移动文件到指定路径

    用SQL语句还原数据库时如果不指定数据库文件的存储路径,则默认把数据文件和日志文件存放到与原数据库相同的文件路径中,这样可能会产生错误,比如执行下面的语句: restore database Smar ...

  7. 浅析NSTextContainer

    浅析NSTextContainer TextKit中的NSTextContainer有点晦涩难懂,如果想用TextKit实现文本分页的效果,你是必须要使用NSTextContainer的...... ...

  8. 解决UITableView在iOS7中UINavigationController里的顶部留白问题

    解决UITableView在iOS7中UINavigationController里的顶部留白问题 出现问题时候的截图: 源码: 用到的类: UIViewController+TitleTextAtt ...

  9. 远程计算机 进程/服务 启动停止(WMI)

    WMI的远程管理需要其计算机的本地管理员组权限,例:gwmi win32_computersystem -computer win08r2d #在远程计算机上启动 notepad.exe 进程invo ...

  10. windows实现MySQL主从复制

    MySQL的主从复制是通过binlog日志来实现的,主从复制中的“主”指的是MySQL主服务器上的数据库,“从”指的是MySQL从服务器上的数据库,且这种复制是基于数据库级别的,为此从服务器中的数据库 ...