当前位置: 首页 > news >正文

apache 配置网站陕西网站备案代理

apache 配置网站,陕西网站备案代理,山东网站建设报价,聚美优品网的网站建设情况栈的数据存储遵循“后进先出的规则”#xff0c;这在计算机里面是非常有用的#xff0c;比如word等编辑软件的撤销功能#xff0c;就是使用栈进行实现的。 1、创建项目 main.h #ifndef _MAIN_H #define _MAIN_H#include stdio.h #include stdlib.…栈的数据存储遵循“后进先出的规则”这在计算机里面是非常有用的比如word等编辑软件的撤销功能就是使用栈进行实现的。 1、创建项目 main.h #ifndef _MAIN_H #define _MAIN_H#include stdio.h #include stdlib.h #include time.h#define TRUE 1 #define FALSE 0 #define OK 1 #define ERROR 0 #define INFEASIBLE -1 // 无意义 #define OVERFLOW -2typedef int Status; typedef int ElemType; typedef int SElemType;#endif main.c #include Stack.h/* run this program using the console pauser or add your own getch, system(pause) or input loop */int main(int argc, char *argv[]) {Stack_test(); return 0; } Stack.h #ifndef _STACK_H #define _STACK_H#include main.hvoid Stack_test(void);#endif Stack.c #include Stack.hvoid Stack_test(void) {} 2、创建栈结构 #ifndef _STACK_H #define _STACK_H#include main.h#define STACK_INT_SIZE 10 // 栈初始容量为10 #define STACK_INCREMENT 2 // 空间不够每次增加两个 // 栈结构类型 typedef struct {SElemType *base; // 栈底指针栈构造和销毁后为NULLSElemType *top; // 栈顶指针int stacksize; // 当前栈的容量分配的空间数 }SqStack;void Stack_test(void);#endif 3、初始化栈 // 初始化栈 // - 在函数内部修改外部栈空间的base、top、stacksize因此需要传入外部栈空间地址 void InitStack(SqStack *s) {s-base (SElemType *)malloc(STACK_INT_SIZE *sizeof(SElemType));if(!s-base){printf(申请栈空间失败\r\n);exit(OVERFLOW);}s-top s-base;s-stacksize 0; } 测试代码 void Stack_test(void) {SqStack st;InitStack(st); } 4、向栈中添加元素 // 向栈中添加元素 // - 在函数内部修改外部栈空间的base、top、stacksize因此需要传入外部栈空间地址 void Push(SqStack *s,SElemType e) {if(s-top - s-base s-stacksize ){// 栈满SElemType *temp;temp (SElemType *)realloc(s-base,(s-stacksize STACK_INCREMENT)*sizeof(SElemType));if(!temp){printf(申请栈空间失败\r\n);exit(OVERFLOW);}s-base temp; // 申请成功修改s-base指向s-top s-base s-stacksize; // 更改新的top指针指向s-stacksize STACK_INCREMENT; }// 将元素推入栈中 *(s-top) e;// 栈顶指针移动 (s-top); } 5、访问栈数据 // 访问栈数据 void StackTraverse(SqStack s) {SElemType *p s.base;while(p s.top){printf(%d ,*p);p;}printf(\n); } 测试代码 void Stack_test(void) {SqStack st;InitStack(st);int i 0;for(i1;i8;i){Push(st,i);}StackTraverse(st); } 6、获取栈顶元素不移除 Status GetTop(SqStack s,SElemType *e) {if(s.top s.base){// 栈不为空*e *(s.top-1); return OK;}return ERROR; } 测试代码  void Stack_test(void) {SqStack st;InitStack(st);int i 0;for(i1;i8;i){Push(st,i);}printf(栈中元素有); StackTraverse(st);SElemType res;GetTop(st,res);printf(栈顶元素%d\n,res); } 7、移除栈顶元素 // 移除栈顶元素 // 接收栈顶数据到外部空间中 Status Pop(SqStack s,SElemType *e) {if(s.top s.base) {return ERROR;}--(s.top);*e *(s.top);return OK; } 测试代码 void Stack_test(void) {SqStack st;InitStack(st);int i 0;for(i1;i8;i){Push(st,i);}printf(栈中元素有); StackTraverse(st);SElemType res;Pop(st,res);printf(移除的栈顶元素%d\n,res); } 8、获取栈的数据长度 // 获取栈的数据长度 int StackLength(SqStack s) {return s.top - s.base; } 测试代码 void Stack_test(void) {SqStack st;InitStack(st);int i 0;for(i1;i8;i){Push(st,i);}printf(栈中元素有); StackTraverse(st);int res StackLength(st);printf(当前栈的长度是%d\n,res);} 9、空栈判断 // 空栈判断 Status StackEmpty(SqStack s) {if(s.top s.base){return TRUE;}else{return FALSE;} } 测试代码 void Stack_test(void) {SqStack st;InitStack(st);int i 0;for(i1;i8;i){Push(st,i);}printf(栈中元素有); StackTraverse(st);int res StackLength(st);printf(当前栈的长度是%d\n,res);Status res1 StackEmpty(st);if(res1){printf(栈为空\n);}else{printf(栈不为空\n);}} 10、将栈设置为空 // 将栈设置为空 void ClearStack(SqStack *s) {s-top s-base; } 测试代码 void Stack_test(void) {SqStack st;InitStack(st);int i 0;for(i1;i8;i){Push(st,i);}printf(栈中元素有); StackTraverse(st);printf(清空栈中数据开始 ---- \n);ClearStack(st);printf(清空栈中数据结束 ---- \n);int len StackLength(st);printf(清空后栈的长度是%d\n,len); } 11、销毁栈空间 // 销毁栈空间 void DestoryStack(SqStack *s) {free(s-base);s-top NULL;s-base NULL;s-stacksize 0; }测试代码 void Stack_test(void) {SqStack st;InitStack(st);int i 0;for(i1;i8;i){Push(st,i);}printf(栈中元素有); StackTraverse(st);printf(销毁栈空间开始 ---- \n);DestoryStack(st);printf(销毁栈空间结束 ---- \n);int len StackLength(st);printf(清空后栈的长度是%d\n,len); } 注意写的所有函数记得在Stack.h中进行声明。 #ifndef _STACK_H #define _STACK_H#include main.h#define STACK_INT_SIZE 10 // 栈初始容量为10 #define STACK_INCREMENT 2 // 空间不够每次增加两个 // 栈结构类型 typedef struct {SElemType *base; // 栈底指针栈构造和销毁后为NULLSElemType *top; // 栈顶指针int stacksize; // 当前栈的容量分配的空间数 }SqStack;void Stack_test(void); void InitStack(SqStack *sp) ; void Push(SqStack *sp,SElemType e); void StackTraverse(SqStack s); Status Pop(SqStack s,SElemType *e) ; int StackLength(SqStack s) ; Status StackEmpty(SqStack s); void ClearStack(SqStack *s) ; void DestoryStack(SqStack *s); #endif
http://www.hkea.cn/news/14466868/

相关文章:

  • 一个人只做网站的流程昆明网站开发多少钱
  • 哪做网站比较便宜做好的网站如何上线
  • 天津网站建设icp备大连服务公司 网站
  • 韩国flash网站外卖网站怎么做
  • 精品资源共享课网站建设新浪博客
  • 如何修改wordpress站杭州最新消息
  • 电子商务网站建设方案书的总结三亚百度推广开户
  • 蜘蛛云建站网站网站改版新闻稿
  • 加强网站集约化建设水果香精东莞网站建设技术支持
  • 化妆品网站建设建设网站的企业
  • 江阴网站制作建设网站教程
  • 网站模板下载网站有哪些品牌网站建设推广
  • 长沙公司做网站的价格做网站 空间还是服务器
  • 织梦网站做seo优化智能营销型网站制作
  • 南昌制作网站的公司做网站的行业平台
  • 河南省城乡和住房建设厅网站微信分享网站显示图片
  • 网站开发 手把手网站建设方案是什么
  • 网站 图标 素材企业网站模板下载哪家口碑好
  • 如何做旅游网站湖南建设部网站
  • wap手机网站开发软件wordpress编辑器不行
  • 苏州资讯网站建设工作态度和责任心感悟
  • 佛山优化网站公司wordpress本地打开很慢
  • 贵阳专业做网站公司有哪些广东新闻联播主持人
  • 网站如何做等保备案wordpress怎么私人媒体库
  • 做视频链接网站十大免费ppt网站软件
  • 网站怎么做动态图旅游网站设计规划书
  • wordpress仿站插件昆明购物网站建设
  • 网站有哪些布局郴州网站网络推广平台
  • 网站建设公司公司建一个公司网站多少钱
  • 网站查询ip地址查询长沙seo优化公司哪家好