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

#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 Primer Plus》第二章——C语言概述(程序示例与解释,提高程序可读性,函数的定义与使用,调试,关键字,复习题与编程练习)

    文章目录 第二章-C语言概述 本章内容 简单的C程序示例 示例解释 快速概要 程序细节 简单程序的结构 提高程序可读性的技巧 进一步使用C 多个函数 调试程序 语法错误 语义错误 程序状态 关键字和保 ...

  2. 画出识别c语言注释的转换图,C语言程序设计基础与实训教程》第1章:基础知识.ppt...

    <C语言程序设计基础与实训教程>第1章:基础知识.ppt>由会员分享,可在线阅读,更多相关<C语言程序设计基础与实训教程>第1章:基础知识.ppt(25页珍藏版)> ...

  3. C语言程序设计——结构体的运用 完成对输入的字符串中C关键词的查找统计。程序运行示例如下:本程序将为您统计C语言的关键字的个数,请输入,输入end结束输入:

    完成对输入的字符串中C关键词的查找统计. 程序运行示例如下: 本程序将为您统计C语言的关键字的个数,请输入,输入end结束输入: if do while while do break goto hel ...

  4. C语言应用笔记:C语言typedef关键字及其使用

    C 语言允许用户使用 typedef 关键字来定义自己习惯的数据类型名称,来替代系统默认的基本类型名称.数组类型名称.指针类型名称与用户自定义的结构型名称.共用型名称.枚举型名称等. 一旦用户在程序中 ...

  5. c语言volatile含义,c语言中volatile关键字是什么含义怎么办呢?

    满意答案 yyvalentine 2016.11.26 采纳率:56%    等级:11 已帮助:4891人 C/C++ 中的 volatile 关键字和 const 对应,用来修饰变量,通常用于建立 ...

  6. 微信小程序C语言通讯录,微信小程序のwxml列表渲染

    列表渲染存在的意义 以电商为例,我们希望渲染5个商品,而又希望容易改变,我们就要在wxml中动态添加. {{index+1}}:{{item.name}} Page({ data: { message ...

  7. c语言typeof 变量,c语言中typeof关键字

    为什么因为一个关键字而专门写一篇随笔呢?因为这个关键字在Linux里面地位非同一般!这个关键字typeof在linux内核里面使用非常广泛! 下面这两个等效声明,用于声明int类弄的变量a typeo ...

  8. c语言中将十六进制数转换为十进制数程序,C语言中十六进制转十进制两种实现方法...

    C语言中十六进制转十进制两种实现方法 C语言 · 十六进制转十进制 问题描述 从键盘输入一个不超过8位的正的十六进制数字符串,将它转换为正的十进制数后输出. 注:十六进制数中的10~15分别用大写的英 ...

  9. 我的世界c语言程序,C语言基本知识

    软件是将一组程序组织起来 每个程序由一组指令组成 数据结构+算法 数据结构 在程序中要指定数据的类型和数据的组织形式. 算法(程序的灵魂) 就是为了解决实际问题而提出的具体方法与步骤. 算法的特点 有 ...

  10. python代码用c语言封装_使用C语言扩展Python程序的简单入门指引

    一.简介 Python是一门功能强大的高级脚本语言,它的强大不仅表现在其自身的功能上,而且还表现在其良好的可扩展性上,正因如此,Python已经开始受到越来越多人的青睐,并且被屡屡成功地应用于各类大型 ...

最新文章

  1. html5地理定位数据
  2. Android切近实战(八)
  3. Android平台利用OpenCL框架实现并行开发初试
  4. 阿里云ECS上环境搭建(virtualenv+flask+gunicorn+supervisor+nginx)
  5. html编译器nvu,开源的网页编辑器Nvu
  6. 【JAVA多线程学习笔记】(1)实现线程的方式 线程生命周期 操作线程的方法
  7. 【问题记录】python的py文件生成exe可执行程序闪退
  8. 英语笔记-some words about description of girl
  9. 浅析全息技术通信方案和产业现状
  10. CNN的基本概念、常用的计算公式和pytorch代码
  11. 微信怎样开通账户升级服务器,微信零钱通小范围公测,怎么升级或开通零钱通账户呢?...
  12. 适合计算机编程开发的笔记本电脑推荐
  13. 网页上打印PDF文件
  14. 如何在一张ppt中插入多张图片并能依次播放
  15. pytorch项目报错:ImportError: no module named “cd“
  16. 【小程序】小程序起步、WXML模板语法和WXSS模板样式
  17. 排查【Jedis客户端触发 Too many open files 问题】
  18. 有限体积法(6)——离散格式的特性
  19. 每天计划完成打勾的app 做完一个打一个勾那种便签
  20. 【软件构造】课件精译(三)软件生命周期与配置管理

热门文章

  1. 抖音回应视频泄露:草稿不会上传后台;苹果开卖5000元印度版iPhone XR;Jboot 2.2.5发布|极客头条...
  2. 对抗弱网下的音视频难题,声网正式开源抗丢包音频编解码器 Agora SOLO!
  3. 神经网络中的分类器该如何改成生成器?
  4. 程序员面向软件开发时,如何成功?
  5. 科大讯飞成为北京 2022 年冬奥会和冬残奥会官方自动语音转换与翻译独家供应商
  6. 漫画:如何给女朋友解释什么是编译与反编译
  7. 华为突遭 Google 釜底抽薪,国产自研操作系统生态恐不可承其重!
  8. 道琼斯重大数据库泄密?真的假的!不过,数据库爆闻可不止这一条……
  9. Oracle 最后通牒:要 Java 8 更新先交钱!
  10. 李彦宏:AI 企业要保护隐私;罗永浩回应酷派“欠钱不还”;ofo 郑州公司人去楼空 | 极客头条...