c语言关键字识别程序,c语言-以关键字搜索程序
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
#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语言-以关键字搜索程序相关推荐
- 《C Primer Plus》第二章——C语言概述(程序示例与解释,提高程序可读性,函数的定义与使用,调试,关键字,复习题与编程练习)
文章目录 第二章-C语言概述 本章内容 简单的C程序示例 示例解释 快速概要 程序细节 简单程序的结构 提高程序可读性的技巧 进一步使用C 多个函数 调试程序 语法错误 语义错误 程序状态 关键字和保 ...
- 画出识别c语言注释的转换图,C语言程序设计基础与实训教程》第1章:基础知识.ppt...
<C语言程序设计基础与实训教程>第1章:基础知识.ppt>由会员分享,可在线阅读,更多相关<C语言程序设计基础与实训教程>第1章:基础知识.ppt(25页珍藏版)> ...
- C语言程序设计——结构体的运用 完成对输入的字符串中C关键词的查找统计。程序运行示例如下:本程序将为您统计C语言的关键字的个数,请输入,输入end结束输入:
完成对输入的字符串中C关键词的查找统计. 程序运行示例如下: 本程序将为您统计C语言的关键字的个数,请输入,输入end结束输入: if do while while do break goto hel ...
- C语言应用笔记:C语言typedef关键字及其使用
C 语言允许用户使用 typedef 关键字来定义自己习惯的数据类型名称,来替代系统默认的基本类型名称.数组类型名称.指针类型名称与用户自定义的结构型名称.共用型名称.枚举型名称等. 一旦用户在程序中 ...
- c语言volatile含义,c语言中volatile关键字是什么含义怎么办呢?
满意答案 yyvalentine 2016.11.26 采纳率:56% 等级:11 已帮助:4891人 C/C++ 中的 volatile 关键字和 const 对应,用来修饰变量,通常用于建立 ...
- 微信小程序C语言通讯录,微信小程序のwxml列表渲染
列表渲染存在的意义 以电商为例,我们希望渲染5个商品,而又希望容易改变,我们就要在wxml中动态添加. {{index+1}}:{{item.name}} Page({ data: { message ...
- c语言typeof 变量,c语言中typeof关键字
为什么因为一个关键字而专门写一篇随笔呢?因为这个关键字在Linux里面地位非同一般!这个关键字typeof在linux内核里面使用非常广泛! 下面这两个等效声明,用于声明int类弄的变量a typeo ...
- c语言中将十六进制数转换为十进制数程序,C语言中十六进制转十进制两种实现方法...
C语言中十六进制转十进制两种实现方法 C语言 · 十六进制转十进制 问题描述 从键盘输入一个不超过8位的正的十六进制数字符串,将它转换为正的十进制数后输出. 注:十六进制数中的10~15分别用大写的英 ...
- 我的世界c语言程序,C语言基本知识
软件是将一组程序组织起来 每个程序由一组指令组成 数据结构+算法 数据结构 在程序中要指定数据的类型和数据的组织形式. 算法(程序的灵魂) 就是为了解决实际问题而提出的具体方法与步骤. 算法的特点 有 ...
- python代码用c语言封装_使用C语言扩展Python程序的简单入门指引
一.简介 Python是一门功能强大的高级脚本语言,它的强大不仅表现在其自身的功能上,而且还表现在其良好的可扩展性上,正因如此,Python已经开始受到越来越多人的青睐,并且被屡屡成功地应用于各类大型 ...
最新文章
- html5地理定位数据
- Android切近实战(八)
- Android平台利用OpenCL框架实现并行开发初试
- 阿里云ECS上环境搭建(virtualenv+flask+gunicorn+supervisor+nginx)
- html编译器nvu,开源的网页编辑器Nvu
- 【JAVA多线程学习笔记】(1)实现线程的方式 线程生命周期 操作线程的方法
- 【问题记录】python的py文件生成exe可执行程序闪退
- 英语笔记-some words about description of girl
- 浅析全息技术通信方案和产业现状
- CNN的基本概念、常用的计算公式和pytorch代码
- 微信怎样开通账户升级服务器,微信零钱通小范围公测,怎么升级或开通零钱通账户呢?...
- 适合计算机编程开发的笔记本电脑推荐
- 网页上打印PDF文件
- 如何在一张ppt中插入多张图片并能依次播放
- pytorch项目报错:ImportError: no module named “cd“
- 【小程序】小程序起步、WXML模板语法和WXSS模板样式
- 排查【Jedis客户端触发 Too many open files 问题】
- 有限体积法(6)——离散格式的特性
- 每天计划完成打勾的app 做完一个打一个勾那种便签
- 【软件构造】课件精译(三)软件生命周期与配置管理
热门文章
- 抖音回应视频泄露:草稿不会上传后台;苹果开卖5000元印度版iPhone XR;Jboot 2.2.5发布|极客头条...
- 对抗弱网下的音视频难题,声网正式开源抗丢包音频编解码器 Agora SOLO!
- 神经网络中的分类器该如何改成生成器?
- 程序员面向软件开发时,如何成功?
- 科大讯飞成为北京 2022 年冬奥会和冬残奥会官方自动语音转换与翻译独家供应商
- 漫画:如何给女朋友解释什么是编译与反编译
- 华为突遭 Google 釜底抽薪,国产自研操作系统生态恐不可承其重!
- 道琼斯重大数据库泄密?真的假的!不过,数据库爆闻可不止这一条……
- Oracle 最后通牒:要 Java 8 更新先交钱!
- 李彦宏:AI 企业要保护隐私;罗永浩回应酷派“欠钱不还”;ofo 郑州公司人去楼空 | 极客头条...