
C/C++
文章平均质量分 82
helloworldpeople
这个作者很懒,什么都没留下…
展开
-
栈的应用之表达式求值(二)
Precede(char a,char b)函数是用来比较栈顶运算符与输入的运算符之间的优先级,输出大小关系''或'='。首先我们的运算符包括加减乘除,左右括号以及用来标识表达式起始的'#'。百度这几个运算符的ascii码,得出以下表格:运算符ascii码值(十进制)#35(40)41*42+原创 2017-05-27 12:31:54 · 486 阅读 · 0 评论 -
C语言实现数制转换
昨天实现了栈的初始化和压一个数据入栈这两个函数,今天添加一个判断栈是否为空以及出栈这两个函数,并且实现一个简单的数制转换的功能。首先简单介绍一下数制转换功能,对于任意一个十进制数N,将其转换成d进制数,这里偷懒直接选用书上例子,将十进制数转换成八进制数,过程如下:NN/8N%813481684168210212原创 2017-05-24 16:51:54 · 9470 阅读 · 2 评论 -
C语言实现单链队列的基本操作(五)
C语言实现单链队列的基本操作前面实现了队列的顺序结构,这一篇我们来实现队列的链式结构。首先说明要使用到的结构体,第一个结构体,struct qnode,它包含两个成员,一个是数据变量data,另外一个是指向下一个节点的指针*next。第二个结构体queue包含的成员是队列的头指针和尾指针,他们都是指向struct qnode的结构体指针。下面说明需要编写的三个函数:初始化函数Sq_In原创 2017-05-21 20:13:12 · 2377 阅读 · 0 评论 -
C语言实现顺序队列的初始化、入队、出队等操作(三)
队列是一种只能在队头删除、队尾插入的线性表,本文实现队列的顺序结构,使用一个结构体包含队头指针、队尾指针、队列的长度这三个成员。通过malloc函数为队列开辟一片内存,大小为100个单位(100*数据类型所占字节),将队头指针指向起始地址,队尾指针也指向起始地址。队列的删除操作:首先检查队列内的数据元素是否存在,如果不存在返回ERROR,存在的话,通过队头指针加一实现。队列的插入操作:首先检查队列原创 2017-05-20 20:18:52 · 15791 阅读 · 0 评论 -
C语言实现顺序栈及插入数据元素(一)
在翻看数据结构,栈和队列这一章的时候,书上使用ADT描述栈的顺序表示以及基本操作,本来以为用C实现起来很简单,但写具体代码时,还是遇到了很多问题,下面跟大家分享一下。问题1:C语言调用函数时,实参通过值传递的方式对形参赋值,而书上采用了C++引用传递的方式来描述,这就让我这个初学者感到很困惑了,函数的形参和调用函数时实参应该怎样处理?问题2:对栈进行初始化后,插入第一个数据元素,栈的长度增原创 2017-05-17 22:17:23 · 5797 阅读 · 1 评论