第8章十一题关键函数
来源:互联网 发布:眼睛红血丝 知乎 编辑:程序博客网 时间:2024/06/05 21:49
#include "stdio.h"
#include "stdlib.h"
#include "string.h"
typedef char datatype;
typedef struct node
{
datatype data;
struct node * pNext;
}linklist;
typedef struct
{
linklist *front,*rear;
}linkqueue;
void SETNULLQL(linkqueue *q)
{
q->front=(linklist*)malloc(sizeof(linklist));
q->front->pNext=NULL;
q->rear=q->front;
}//置空队
bool EMPTYQL(linkqueue*q)
{
if(q->front==q->rear)
return true;
else return false;
}//判断队空
datatype FRONTQL(linkqueue*q)
{
if(EMPTYQL(q))
{
printf("队空");
return -1;
}
else return(q->front->pNext->data);
}//取队头元素
void ENQUEUEQL(linkqueue *q,datatype x)
{
q->rear->pNext=(linklist *)malloc(sizeof(linklist));
q->rear=q->rear->pNext;
q->rear->data=x;
q->rear->pNext=NULL;
}//入队
datatype DEQUEUEQL(linkqueue*q)
{
datatype temp;
linklist * s;
if(EMPTYQL(q))
{
printf("队空");
return -1;
}
else{
s=q->front->pNext;
if(s->pNext==NULL)
{
q->front->pNext=NULL;
q->rear=q->front;
}
else q->front->pNext=s->pNext;
temp=s->data;
free(s);
return(temp);
}
}//删除队头元素并返回队头元素
bool DuiChen(datatype *str)
{
linkqueue*q;
int n,i,j;
datatype ch;
i=0;
n=strlen(str);
q=(linkqueue*)malloc(sizeof(linkqueue));
SETNULLQL(q);
while(i<(n/2))
{
ENQUEUEQL(q,str[i]);
i++;
}
i++;
j=1;
while(i<n)
{
ch=str[n-j];
if(ch!=DEQUEUEQL(q))
return false;
j++;
i++;
}
return true;
}//关键函数判断是否对称
int main()
{
datatype str[100];
printf("请输入字符串:");
scanf("%s",str);
if(DuiChen(str)){
printf("是对称字符串。。。/n");
return 1;
}
else{
printf("不是对称字符串。。。/n");
return 0;
}
return 0;
}
- 第8章十一题关键函数
- 第七章第19题关键代码
- 第4章 关键的“构建”决策
- 第8章 函数探幽
- 第8章 函数探索
- 第8章 分析函数
- 第一篇,第二章 之 多线程程序设计成功关键
- 《代码大全》学习-第4章 关键的“构建”决策
- 【代码大全】第4章 关键的“构建“决策
- 第3章 语法、关键保留字及变量
- 第3章 语法、关键保留字及变量
- 第3章 语法、关键保留字及变量
- 第5篇:swift语言笔记:函数和闭包关键点
- 相对路径关键函数
- Python关键函数
- MQL4关键函数学习
- MQL4关键函数学习
- 【php】关键函数备忘录
- C语言题面试大全
- 如何在查看PDF文档时使用金山词霸自动取词查询功能
- Java中的几个重要的数据类型
- Oracle PL/SQL Q&A
- 今天遇到的问题是tftpd的使用问题
- 第8章十一题关键函数
- 第八章十六题关键代码,输出的时候有些问题,主要看算法。
- Adodb.Stream取得图像的高宽
- Socket编程相关数据类型定义
- BUG名字的出处
- 仿QQ导航菜单(javascript)
- 显示与打印的差别
- java环境下的axis与xfire性能测试数据
- NUnit学习笔记1