该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

#include

#include

#include

typedef struct CharList_Node{

char *data;

int vaul;

struct CharList_Node *next;

}cnode;

typedef struct Int_Node{

cnode *bat;

struct Int_Node *next;

}intnode;

typedef struct IndexList_Node{

char *info;

intnode *code;

struct IndexList_Node *next;

}inode;

cnode *CreatCharList()

{

cnode *head,*hp,*tp;

char *a;

char *b="n";

int x;

a=(char*)malloc(sizeof(char));

head=(cnode*)malloc(sizeof(cnode));

head->next=NULL;

hp=head;

printf("Input the CharList,compelete by enter 'n' and number '0'.:\n");/*建立词表,输入字符串,以输入“n”+”回车”以及“0”+"回车” 结束*/

while(EOF!=(scanf("%s""%d",a,&x))&&(*a!=*b))

{

tp=(cnode*)malloc(sizeof(cnode));

strcpy(tp->data,a);

tp->vaul=x;

tp->next=hp->next;

hp->next=tp;

hp=tp;

}

return head;

}

void PrintCharList(cnode *phead)

{

cnode *p;

p=phead->next;

printf("Output the CharList Vaul:\n");

while(p)

{

printf("%s  ""%d\n",p->data,p->vaul);

p=p->next;

}

}

intnode *Compare(char *x,cnode *chead)

{

int i;

int j;

int k;

char *a;

intnode *ptr,*hp,*tp;

cnode *p;

ptr=NULL;

p=chead->next;

ptr=(intnode*)malloc(sizeof(intnode));

ptr->next=NULL;

hp=ptr;

while(p)

{ a=p->data;

i=0;

j=0;

k=0;

while((k

{

if(*(x+i)==*(a+j))

{

i++;

j++;

}

else

{

j=++k;

i=0;

}

if(i==(strlen(x)))

{

tp=(intnode*)malloc(sizeof(intnode));

tp->next=hp->next;

tp->bat=p;

hp->next=tp;

hp=tp;

}

}

p=p->next;

}

return ptr;

}

void PrintCode(intnode *inthead)

{

intnode *p;

p=inthead->next;

while(p)

{

printf("%d ""%s\n",p->bat->vaul,p->bat->data);

p=p->next;

}

}

void PrintIndexList(inode *ihead)

{

inode *ip;

intnode *intp;

ip=ihead->next;

while(ip)

{

printf("%s: ",ip->info);

intp=ip->code;

PrintCode(intp);

ip=ip->next;

printf("\n");

}

}

main()

{

cnode *pp;

intnode *pr;

inode *ihead,*hp,*tp;

char *a;

char *b="n";

ihead=(inode*)malloc(sizeof(inode));

ihead->next=NULL;

hp=ihead;

a=(char*)malloc(sizeof(char));

pp=CreatCharList();

PrintCharList(pp);

printf("Please intput index information ,complete by 'n':\n");/*输入索引关键字,以输入"n"+”回车”结束*/

while(EOF!=scanf("%s",a)&&(*a!=*b))

{

pr=Compare(a,pp);

tp=(inode*)malloc(sizeof(inode));

tp->next=hp->next;

strcpy(tp->info,a);

tp->code=pr;

hp->next=tp;

hp=tp;

printf("%s: ",tp->info);

PrintCode(pr);

printf("\n");

}

printf("Press key of 'y' output the IndexList information,overview by 'n':\n");/*输入”y”+”回车”打印索引表,输入"n"+”回车” 退出程序。*/

while(EOF!=scanf("%s",a)&&(*a!=*b))

{

PrintIndexList(ihead);

}

return 0;

}

用关键字搜索c语言,c语言-以关键字搜索程序相关推荐

  1. c语言关键字不做标识符,C语言标识符、关键字、注释、表达式和语句

    这一节主要讲解C语言中的几个基本概念. 标识符 定义变量时,我们使用了诸如 a.abc.mn123 这样的名字,它们都是标识符(Identifier). 标识符就是程序员自己起的名字,除了变量名,后面 ...

  2. 图的深度搜索c语言,求图的深度优先搜索!该怎么处理

    当前位置:我的异常网» C语言 » 求图的深度优先搜索!该怎么处理 求图的深度优先搜索!该怎么处理 www.myexceptions.net  网友分享于:2013-03-16  浏览:12次 求图的 ...

  3. java语言只保留了什么_java语言的保留的关键字【小白必读】

    关键字是编程语言里事先定义好并赋予了特殊含义的单词,也称作保留字.和其他语言一样,Java中保留了许多关键字,例如, class. public等,下面列举的是Java中所有的关键字. abstrac ...

  4. c语言共有几种运算符_【填空题】C语言一共有 ()个关键字,()中控制语句,()种运算符...

    [填空题]C语言一共有 ()个关键字,()中控制语句,()种运算符 更多相关问题 [填空题] 对煤进行工业分析的目的,是为了判断煤的(). [填空题] 钛的比重是不锈钢的一半,抗腐蚀性是不锈钢的(). ...

  5. java里的关键字有什么用_java语言关键字有哪些?都有什么用处?

    Java语言中的关键字是非常多的,并且有着一定的规范,本文就将带大家深入了解其中详情. 关键字概念 Java中的关键字一般会被用来表示一种数据类型,或表示程序的结构等;它们是不能用作变量名.方法名.类 ...

  6. python中什么是关键字参数_如何使用python语言中函数的关键字参数的用法

    一般情况下,在调用函数时,使用的是位置参数,即是按照参数的位置来传值:关键字参数是按照定义函数传入的参数名称来传值的.那么,关键字参数怎么使用? 工具/原料 python pycharm 截图工具 W ...

  7. 语言资源的类别、搜索与搭建策略

    语言资源的类别.搜索与搭建策略 一.引言 语言资源,本身是一个宽泛的概念,即语言+资源,语言指的是资源的限定域,资源=资+源,是资料的来源或者汇总,加在一起,也就形成了这样一种界定:任何语言单位形成的 ...

  8. C语言深入理解系列 - 关键字:auto和register

    本文系本站原创,欢迎转载! 转载请注明出处: http://blog.csdn.net/mr_raptor/article/details/7209452 ++++++++++++++++++++++ ...

  9. c语言关键字中文意思,C语言的32个关键字是什么意思啊

    C语言的32个关键字是什么意思啊 32个关键字是什么意思有谁知道的要简洁一点的 更新时间:2019-06-03 22:54 最满意答案 1. 数据类型关键字(12个): (1). char :声明字符 ...

  10. sqlite 无符号32_C语言的32个关键字

    图控大叔 构图传递思想 阅读从未如此简单!!! 01 前言 今天对C语言的32个关键字做一下分类整理. 02 具体内容 对C语言的32个关键字做分类,一共可以分成四大类.如下: 具体分类如下: 数据类 ...

最新文章

  1. Boost--Graph
  2. mysql 子查询多个字段_MySql基础
  3. 构造函数不能为虚函数
  4. 面经——嵌入式软件工程师ARM体系与架构相关
  5. csv转json文件
  6. 2022年中国即时配送行业趋势研究报告
  7. 【Android开发坑系列】之PopupWindow
  8. 输入输出流_内部存储·
  9. 设计师需要的素材、教程、工具等网站收集
  10. 计算机网络是由网络硬件网络软件,超星尔雅FPGA应用开发课程设计期末答案
  11. MTK6589平板上launcher的一些小修改
  12. html5判断屏幕锁屏,js实现自动锁屏功能
  13. 恒流源差分放大电路静态分析_多级放大电路以及差分放大电路
  14. BeyondCompare4.0比较代码内容相同但显示红色问题终结方案
  15. 计算机网络:非持久HTTP连接 VS 持久性HTTP 连接
  16. Matlab 动态输入变量和嵌套函数、匿名函数
  17. 我们对区块链游戏的期望太高了
  18. Revit新建平面视图
  19. 专访许长敬:移动互联网将进入电子商务阶段
  20. 什么时间锻炼身体最佳?

热门文章

  1. flash应用中的一个安全隐患
  2. mysql教程手机版_MySQL 入门教程
  3. 【转】el-table复选框分页记忆-非:reserve-selection=true模式
  4. Print 与Debug.Log的区别
  5. shell脚本编程 逐行处理文本 将字符串转化为数组
  6. oracle 创建表同时添加注释
  7. 磁盘空间未释放异常案例
  8. 单机搭建Android开发环境(二)
  9. Android Studio Prettify 插件
  10. 网络字节序与主机字节序 高低位