c++ 双向链表 的查找和删除
#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++ 双向链表 的查找和删除的更多相关文章
- SQL重复记录处理(查找,过滤,删除)
SQL重复记录处理(查找,过滤,删除) ID int Title nvarchar(50) AddDate datetime 数据 www.2cto.com ID ...
- 有关文件夹与文件的查找,删除等功能 在 os 模块中实现
最近在写的程序频繁地与文件操作打交道,这块比较弱,还好在百度上找到一篇不错的文章,这是原文传送门,我对原文稍做了些改动. 有关文件夹与文件的查找,删除等功能 在 os 模块中实现.使用时需先导入这个模 ...
- STL中vector的赋值,遍历,查找,删除,自定义排序——sort,push_back,find,erase
今天学习网络编程,那个程序中利用了STL中的sort,push_back,erase,自己没有接触过,今天学习一下,写了一个简单的学习程序.编译环境是VC6.0 这个程序使用了vect ...
- 数据结构与算法->树->2-3-4树的查找,添加,删除(Java)
代码: 兵马未动,粮草先行 作者: 传说中的汽水枪 如有错误,请留言指正,欢迎一起探讨. 转载请注明出处. 目录 一. 2-3-4树的定义 二. 2-3-4树数据结构定义 三. 2-3-4树的可以得到 ...
- 【数据结构】——搜索二叉树的插入,查找和删除(递归&非递归)
一.搜索二叉树的插入,查找,删除 简单说说搜索二叉树概念: 二叉搜索树又称二叉排序树,它或者是一棵空树,或者是具有以下性质的二叉树 若它的左子树不为空,则左子树上所有节点的值都小于根节点的值 若它的右 ...
- oracle中查找和删除重复记录的几种方法总结
平时工作中可能会遇到当试图对库表中的某一列或几列创建唯一索引时,系统提示 ORA-01452 :不能创建唯一索引,发现重复记录. 下面总结一下几种查找和删除重复记录的方法(以表CZ为例): 表CZ的结 ...
- Linux系统中查找、删除重复文件,释放磁盘空间。
在Linux系操作系统中查找并删除重复文件的方法的确有很多,不过这里介绍的是一款非常简单实用的软件FSlint.FSlint是一个重复文件查找工具,可以使用它来清除不必要的重复文件,笔者经常使用它来释 ...
- linux中find与rm实现查找并删除文件
find命令: find . -name '*.log' #查找当前目录下的log文件 查找并删除: find . -name '*.log' -type f -print -exec rm -rf ...
- Dom4j 操作, 节点查找 添加 删除 修改 。。。xPath
转: Dom4j 操作, 节点查找 添加 删除 修改 ...xPath 2013年11月28日 10:48:59 今晚打酱油8 阅读数:8506更多 个人分类: JavaWeb 版权声明:本文为博 ...
随机推荐
- 在html的JavaScript部分计算,保留小数点后面的位数
例: f_pbf = ((f_boday_fat/f_weight)*100).toFixed(1); 注:例子中的.toFixed(1)是所用函数,确保在所得结果中保留小数点后面一位数,若 ...
- mysql-5.7 持久化统计信息详解
一.持久化统计信息的意义: 统计信息用于指导mysql生成执行计划,执行计划的准确与否直接影响到SQL的执行效率:如果mysql一重启 之前的统计信息就没有了,那么当SQL语句来临时,那么mysql就 ...
- asp.net MVC4 框架揭秘 读书笔记系列2
1.2 MVC 变体 MVC 是一种Pattern 另外一种说法是ParaDigm 范例 模式和范例的区别在于前者可以应用到具体的应用上,而后者则仅仅提供一些指导方针 1.2.1 MVP Model ...
- CSS-定位属性
Css学习——定位属性 定位可以看作是一种分层,通过对页面中的各种元素进行定位,可以将某些元素放到其他元素的上层,并在浏览器的窗口中设置这些元素的具体位置. position属性以及Css所提供的4中 ...
- 用windows自带的fsutil来创建1G稀疏文件(sparse file)
fsutils file createnew a.dat 1073741824 fsutil sparse setflag a.dat fsutil sparse setrange a.dat 0 ...
- html5 js 游戏的一篇博客 貌似不错
http://blog.csdn.net/lufy_legend/article/details/8888787
- Spring+Hibernate实现动态SessionFactory切换
场景: 1)系统有多个数据库 2)且数据库类型也不尽相同 3)现在应用根据某些条件路由到具体的数据库 4)且在spring+hibernate框架下,支持依赖注入 已有实现,spring动态数据源,但 ...
- 【原创】uwsgi中多进程+多线程原因以及串行化accept() - thunder_lock说明
如有不对,请详细指正. 最近再研究uwsgi如何部署python app,看uwsgi的文档,里面有太多的参数,但每个参数的解释太苍白,作为菜鸟的我实在是不懂.想搞清楚uwsgi的工作原因以及里面的一 ...
- 洛谷 P2764 最小路径覆盖问题【最大流+拆点+路径输出】
题目链接:https://www.luogu.org/problemnew/show/P2764 题目描述 «问题描述: 给定有向图G=(V,E).设P 是G 的一个简单路(顶点不相交)的集合.如果V ...
- 简单的Windows 服务的安装和卸载
步骤: 1.运行--〉cmd:打开cmd命令框 2.在命令行里定位到InstallUtil.exe所在的位置 InstallUtil.exe 默认的安装位置是在C:/Windows/Microsoft ...