创意合肥网站建设成都注册公司代理公司

web/2025/10/1 0:16:14/文章来源:
创意合肥网站建设,成都注册公司代理公司,推广网站有效的免费方法,网站怎么做下载网页代码吗C语言实现简单的栈结构今天看到一个问题是要交换两个变量的值并且不能使用中间变量#xff0c;首先想到的方法就是用数学的方法#xff1a;int a 10,b 12;a a b; // 求和b a - b; // 和减去b得到的是a的值a a - b; // 和减去a(此时的b是最初a的值)得到b 的值这种方法很…C语言实现简单的栈结构今天看到一个问题是要交换两个变量的值并且不能使用中间变量首先想到的方法就是用数学的方法int a 10,b 12;a a b; // 求和b a - b; // 和减去b得到的是a的值a a - b; // 和减去a(此时的b是最初a的值)得到b 的值这种方法很容易看得懂。后来想用栈先进后出的特性先把a、b按顺序压栈然后a等于先出栈的bb等于后出栈的a于是就尝试下用C语言实现一个简单的栈结构。首先是用结构体定义一个栈struct stack{int top; // 记录栈中现有多少个数据data[top]表示栈顶int data[10]; // 表示栈中最多存10个数据};接下来是栈的一些基本操作压栈// 将一个数据压栈 成功返回1 不成功返回0 (栈溢出了)int push(myStack * stack, int data){// 判断是否溢出if (stack-top 1 N - 1) {stack-data[stack-top] data;return 1;}else{return 0;}}出栈// 出栈 如果是空 返回-1 否则返回栈顶的数据 然后栈中元素数量减一int pop(myStack * stack){if (is_empty(stack)) {return -1;}else{return stack-data[stack-top--];}}判空处理// 判断栈是否为空int is_empty(myStack * stack){if (stack-top -1) {return 1;}else{return 0;}}最后使用栈结构对两个变量值进行交换int a 10, b 12;initStack();push(pS, a);push(pS, b);a pop(pS);b pop(pS);printf(a %d, b %d\n,a,b);遇到的问题开始的时候对栈的操作的一些函数的参数我都是用结构体类型传的而不是现在的结构体指针类型。后来运行发现对结构体操作之后结构体的内容并没有改变。然后改成了结构体指针类型发现运行正确测试了下发现用结构体类型参数传入函数中是无法操作的据说C可以没试。好吧就这样全部代码#include #define N 10struct stack{int top; // 记录栈中有多少个数据data[top]表示栈顶int data[N];};typedef struct stack myStack;myStack S;myStack *pS S;void initStack(){pS-top -1;}// 判断栈是否为空int is_empty(myStack * stack){if (stack-top -1) {return 1;}else{return 0;}}// 设置栈为空void set_empty(myStack * stack){stack-top -1;}// 将一个数据压栈 成功返回1 不成功返回0 (栈溢出了)int push(myStack * stack, int data){// 判断是否溢出if (stack-top 1 N - 1) {stack-data[stack-top] data;return 1;}else{return 0;}}// 出栈 如果是空 返回-1 否则返回栈顶的数据 然后栈中元素数量减一int pop(myStack * stack){if (is_empty(stack)) {return -1;}else{return stack-data[stack-top--];}}int main() {int a 10, b 12;initStack();push(pS, a);push(pS, b);a pop(pS);b pop(pS);printf(a %d, b %d\n,a,b);return 0;}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/84734.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

中企高呈建设网站国产免费crm系统有哪些

据外媒爆料,亚马逊正在训练他的第二个大语言模型——Olympus,很有可能在今年12月份上线。亚马逊计划将Olympus接入在线零售商店、Echo等设备上的Alexa语音助手,并为AWS平台提供新的功能。据说这个大语言模型规模达到2万亿(2000B&a…

网站开发公司 苏州lda模型 文本建模 wordpress

常见的状态码及其原因: 状态码说 明详 情100继续请求者应当继续提出请求。服务器已收到请求的一部分,正在等待其余部分101切换协议请求者已要求服务器切换协议,服务器已确认并准备切换200成功服务器已成功处理了请求201已创建请求成功并且服务器创建了新…

怎么做买东西的网站福建住房与城乡建设网站

编程控制垃圾收集器 System.GC类型为应用程序提供了直接控制垃圾收集器的一些方法,可以通过GC.MaxGeneration来查询托管堆支持的最大代龄,目前为2。 通过下面方法执行垃圾收集器 GC.Collect(int);传递代龄,传递0,收集0代&#xff…

温州网站设计定制小程序开发公司网

1、*p 与 *(p)的区别 因为“”的优先级大于“*”,所以*p 相当于*(p)。 但是p表示先运算再,所以*p或者*(p),其实等价于“先(*p),然后再p”。 注意,“先(*p),然后再p”不能表示成“ (*p)”,因为(*…

怎样进行网站推广wap网站自动

for循环功能for 循环是一种迭代循环机制,迭代即重复相同的逻辑操作,每次的操作都是基于上一次的结果而进行的。并且for循环可以遍历任何序列的项目,如一个列表或者一个字符串语法for 循环的一般格式如下:for in 注释:v…

网站备案 新增接入如何开网店0基础教程

排序是我们编程时的常用操作,实现方式也有很多种,本篇文章列举几种我常用的用法,希望对大家有用! 01 数组排序 最常见的排序是对一个数组排序,比如: int[] aArray new int[8] { 18, 17, 21, 23, 11, 31…

学校网站模板wordpress软件开发外包是什么工作

休息片刻之后,我最近一直在使用Neo4j导入工具 ,并遇到了我最初不理解的有趣的错误消息。 我有一些CSV文件,其中包含要导入Neo4j的节点。 它们的内容如下所示: $ cat people_header.csv name:ID(Person)$ cat people.csv "…

前端网站如何做全景图360浏览器个别网页打不开怎么解决

http://blog.csdn.net/seusoftware/archive/2010/04/24/5524414.aspx引用一、综述命名和编码过程中,定义有意义的名称,以易于理解、方便书写为原则。(1)避免使用中文,尽量使用全拼音或全英文,以方便国际化;(2)避免拼音…

网站设计外文文献福州seo博客

需要这个工具整合包的小伙伴可以关注一下文章底部公众号,回复关键词【swapface】即可获取。 从我们的链接下载,得到这个exe文件 双击运行即可进入安装界面 如下图所示已经在安装中啦 安装好之后我们根据上面的安装路径找到要执行的文件 双击红框中的…

网页版微信登录二维码seo实训思考与总结

前言 本期我们讨论字符串字面量。 这是一种基于字符串的东西,上一章我们讲过字符串,你一定要去先去看看那一期的内容。 P23 C字符串-CSDN博客 01 什么是字符串字常量呢? 字符串字面量就是在双引号之间的一串字符 在上面的代码中&#xf…

重庆网站icp备案查询比较有名的网站建设公司

Gson 是一个流行的 Java 库,用于序列化和反序列化 Java 对象。在 Android 开发中,使用 Gson 插件可以方便地将 Java 对象转换为 JSON 格式,并将 JSON 数据转换回 Java 对象。 以下是使用 Gson 插件的一般步骤: 1. 添加 Gson 库&…

php企业网站论文网上购物网站开发的背景

1. 认识HTTP协议 HTTP(Hyper Text Transfer Protocol)协议又叫做超文本传输协议,是一个简单的请求-响应协议,HTTP通常运行在TCP之上。 超文本的意思就是超越普通的文本,http允许传送文字,图片&#xff0c…

网站被k有什么表现网页设计实训报告1200

抽象符号只是对现实世界的描述而非模拟,这种描述的还原依赖于人脑对自然世界的物理共识,当你说 “这是山” 这三个简单的字时,听者会还原出一座大山的具象… 人们早在 70 多年前就习惯了以二进制 0 和 1 为基础的数字逻辑,开启了数…

陶瓷网站模板怎么发现网站漏洞而做软件

Sentinel 是一款面向分布式系统的流量控制、熔断和自适应限流工具,由Alibaba开源。Sentinel 以Java客户端的形式提供,可以嵌入到Java应用中以保护系统稳定运行。 以下是使用Sentinel实现流量控制和降级操作的详细步骤: 1. 添加Sentinel依赖…

怎么样创建一个网站六台阶客户管理软件

3.3 VREF/VREF-引脚 VREF和VREF-是STM32中用于提供参考电压的引脚。如下图: VREF引脚可以连接一个单独的外部参考电压,范围在2.0V~VDDA,但不能超过VDDA,否则就超过了模拟器件的最大供电电压。在100引脚的封装中&#…

关于进行网站建设费用的请示自己设计logo的软件

文章目录 开发平台基本信息问题描述解决方法 开发平台基本信息 芯片: MT8766 版本: Android 12 kernel: msm-4.19 问题描述 客户要求设备默认开启usb共享网络,并且网络共享给PC端时,PC端动态获取到的子网掩码、网关是固定不变的。 解决方法 解决方案…

免费流量网站推广海南政务服务网

什么是lodash Lodash 是一个 JavaScript 实用工具库,提供了很多用于处理数据、简化开发等方面的功能。它提供了一组常用的工具函数,用于处理数组、对象、字符串等常见数据结构,同时也包含了一些函数式编程的工具。对于前端开发来说&#xff…

青岛商业网站建设如果建设淘宝导购网站

目录 数组概述 数组的四个基本特点: 数组声明创建 1、声明数组 2、创建数组

佛山企业网站推广做空机构的网站

####系统中输入输出的管理####1.理解系统的输入输出重定向输入重定向是指把文件导入到命令中,而输出重定向则是把原本要输出到屏幕的数据信息写入到指定文件中。2.管理输入输出的符号##输出重定向> ##重定向正确输2> ##重定向错误输出&> …

旅游网站建设平台分析7游网页游戏平台

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 大家一开始看到这个题目的时候,也许比较吃惊。为什么会有这样的题目?但是做过slam的同学,应该就比较熟悉和了解…