C语言九十五之实现经典的反转数组(通过指针或数组下标操作)

✅作者简介:大家好我是码玛莎拉蒂,CSDN博客专家🥇🥇🥇
📃个人主页:个人主页
🔥系列专栏:C语言试题200例
💬推荐一款模拟面试、刷题神器👉 点击跳转进入网站

请添加图片描述

1、题目

实现反转数组
比如数组

int a[] = {1, 2, 3, 4, 5};

反转后得使得数组是这样

int a[] = {5, 4, 3, 2, 1};

可以使用指针或者数组下标实现






2 、温馨提示

C语言试题汇总里可用于计算机二级C语言笔试、机试、研究生复试中C程序设计科目、帮助C语言学者打好程序基础、C语言基础,锻炼您的逻辑思维和解决问题的能力,帮助你成为C语言笔试、机试解题高手,帮助你拿到C语言工作的offer,每一个题目都附带源代码和运行结果,让你不再有任何困惑,妈妈再也不担心我的C语言了。如果程序有任何看不懂或者哪个步骤不理解的地方都可以加我微信(15874274916)私聊我,或者有更好的思路解决办法都可以加我微私聊,一起探讨、希望可以正真的帮助到你,同时也可以扫下面的二维码关注我微信公众号,比如你还对生活、美食或者其它方面都感兴趣,都可以加微信交流,博主擅长讲解计算机相关方面的知识、如果大家对计算机方向、前端、移动端、服务端、数据结构、算法、网络、高数等等一些列方向比较迷茫或者不知道要学哪些?或者具体怎么学?或者其它方向有任何困惑都可以找我交流,谢谢大家关注。






3、源代码实现

#include <stdio.h>
#include <stdlib.h>//通过数组下标反序整数数组操作
void reverse(int *a, int length)
{for (int i = 0; i < length / 2; ++i){int temp = a[i];a[i] = a[length - 1 - i];a[length - 1 - i] = temp;} 
}//通过指针反序整数数组操作
void reverse1(int *a, int length)
{int *p = a;for (int i = 0; i < length / 2; ++i){int temp = *(p + i);*(p + i) = *(p + length - i - 1);*(p + length - i - 1) = temp;} 
}//通过指针反序整数数组操作
void reverse2(int *a, int length)
{int *start = a;int *end = a + length - 1;//指针是具体的数字,我们可以比较指针的大小while (start <= end){int temp = *start;*start = *end;*end = temp;start++;end--;}
}//打印整形数组
void print(int *a, int length) 
{for (int i = 0; i < length; ++i){printf("a[%d] is %d\t", i, a[i]);}printf("\n");
}int main()
{int a[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};int length = sizeof(a) / sizeof(int);//通过数组下标反序整数数组操作reverse(a, length);print(a, length);//通过指针反序整数数组操作reverse1(a, length);print(a, length);//通过指针反序整数数组操作reverse2(a, length);print(a, length);return 0;
}





4、运行结果

a[0] is 10      a[1] is 9       a[2] is 8       a[3] is 7       a[4] is 6       a[5] is 5       a[6] is 4       a[7] is 3       a[8] is 2       a[9] is 1
a[0] is 1       a[1] is 2       a[2] is 3       a[3] is 4       a[4] is 5       a[5] is 6       a[6] is 7       a[7] is 8       a[8] is 9       a[9] is 10
a[0] is 10      a[1] is 9       a[2] is 8       a[3] is 7       a[4] is 6       a[5] is 5       a[6] is 4       a[7] is 3       a[8] is 2       a[9] is 1

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

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

相关文章

Linux下使用shell实现上传linux下某个目录下所有文件到ftp

首先我们需要搞清楚单个文件怎么上传&#xff0c;把这个单文件上传到ftp上的实现命名为一个:upload_to_ftp_command.sh 之后&#xff0c;需要弄清楚怎么实现遍历一个目录下的所有文件的&#xff0c;把这个遍历某个目录下的文件实现命名为&#xff1a;foeach_directory_and_uplo…

【地理信息系统GIS】教案(七章全)第二章:地理信息系统数据结构及数据获取

文章目录 第一节 地理空间及其表达第二节 空间数据采集第三节 属性数据采集第四节 空间数据格式转换第五节 空间数据质量第一节 地理空间及其表达 1.1 地理空间 地理空间上至大气电离层,下至地幔莫霍面,是生命过程活跃的场所,也是宇宙过程对地球影响最大的区域。 地理信息…

[转]Mysql数据库开发的36条原则

前言 这些原则都是经历过实战总结而成 每一条原则背后都是血淋淋的教训 这些原则主要是针对数据库开发人员&#xff0c;在开发过程中务必注意 总是在灾难发生后&#xff0c;才想起容灾的重要性&#xff1b; 总是在吃过亏以后&#xff0c;才记得曾有人提醒过。 一、核心原则…

Kamp;R练习题6-1统计关键词出现的次数

这道练习题训练了&#xff1a; 1.结构体数组 2.二分查找 3.指针操作 ---- 都不难。但非常基础&#xff0c;我认为非常好&#xff0c;做完了记到博客上来&#xff0c;题目见k&R&#xff0c;实现例如以下&#xff1a; /** Practice of struct array. K&R 6-1* author : w…

大话领域驱动设计——表示层及其他

概述表示层又称用户界面层&#xff0c;包含应用程序的页面、组件等UI元素。服务层提供项目的HTTP API接口&#xff0c;包含MVC Controller和相关组件。ABP框架虽然在表示层提供了不少组件&#xff0c;但是这些和DDD本身没有多少关系。而且随着前后端分离架构的流行&#xff0c;…

C语言九十六之实现经典的字符串反转(通过指针或下标操作)

✅作者简介&#xff1a;大家好我是码莎拉蒂&#xff0c;CSDN博客专家&#x1f947;&#x1f947;&#x1f947; &#x1f4c3;个人主页&#xff1a;个人主页 &#x1f525;系列专栏&#xff1a;C语言试题200例 &#x1f4ac;推荐一款模拟面试、刷题神器&#x1f449; 点击跳转进…

Windows10家庭中文版没有本地策略选项完美解决方案

Win+R,在运行中输入:secpol.msc,查看安全设置是否打开,如下图所示。 组策略对于优化和维护Windows系统来说十分重要。众所周知,Windows 10家庭版中并不包含组策略,对于使用家庭版Windows的朋友来说,十分不方便。 通常情况下,如果策略组没有打开的话,在安装CAD等软件时…

JavaScript总结(六)

使用DOM操纵样式表 ✍ 操纵元素的Style样式属性&#xff08;所有的均对于CSS的内联式&#xff09; 对于每个CSS样式&#xff0c;Style对象都包含了一个相对应的属性&#xff0c;只需要用到style属性即可&#xff1b; Div.style.color "red"; //给div元素设置字体颜色…

[转]浅谈CMD和win powershell的区别

1、前言&#xff1a;本文给大家简单描述了一下POWERSHELL和CMD的区别&#xff0c;简单的说&#xff0c;Powershell是cmd的超集&#xff0c;换句话说&#xff0c;cmd能做的事情&#xff0c;Powershell都能做&#xff0c;但是Powershell还能额外做许多cmd不能做的活。 2、cmd是和…

【ArcGIS风暴】栅格计算器(Raster Calculator)运算出现错误问题及解决方案汇总

栅格计算器(Raster Calculator) 是一种空间分析函数工具,可以输入地图代数表达式,使用运算符和函数来做数学计算,建立选择查询,或键入地图代数语法。只有熟练的运用并记忆一些常用的公式,才能很好的运用栅格计算器。在使用的过程中,容易出现这样那样的问题,本文就把栅…

「博客之星」评选,互投5星,留链必投

⭐⭐ ⭐ ⭐⭐ 欢迎诚信互投⭐ ⭐ ⭐ ⭐⭐ ⭐⭐⭐⭐⭐ 谢谢各位大佬门&#xff0c;互投5星⭐⭐⭐⭐⭐ 投票地址&#xff1a; https://bbs.csdn.net/topics/603958492 投票地址&#xff1a; https://bbs.csdn.net/topics/603958492 投票地址&#xff1a; https://bbs.csdn.net…

为 ServiceCollection 实现装饰器模式

为 ServiceCollection 实现装饰器模式Intro在二十四种设计模式中&#xff0c;有一个模式叫做装饰器模式一般用来动态地给一个对象添加一些额外的职责&#xff0c;就增加功能来说&#xff0c;装饰模式比生成子类更为灵活&#xff0c;有更好的扩展性&#xff0c;我们也可以借助 D…

手把手教你启用Win10的Linux子系统 Ubuntu

1、打开“开发者选项” 2、启用“执行 Linux 程序的windows 子系统” 3、应用商店下载安装Ubuntu 附&#xff1a;ubuntu的一些命令及查看已安装软件包的命令 // 系统 # uname -a # 查看内核/操作系统/CPU信息 # head -n 1 /etc/issue # 查看操作系统版本 # cat…

jquery的height()和javascript的height总结,js获取屏幕高度

jquery的height()和javascript的height总结&#xff0c;js获取屏幕高度在javascript和jquery中&#xff0c;都有对各种高度的写法&#xff0c;在这里&#xff0c;我们就着重讲一下窗口、文档等高度的理解。(宽度和高度差不多&#xff01;)jquery的各种高度首先来说一说$(docume…

【地理信息系统GIS】教案(七章全)第五章:空间数据查询与空间分析

目录 第一节 空间数据查询第二节 缓冲区分析第三节 叠置分析第四节 网络分析第五节 DEM建立及分析第一节 空间数据查询 1.1 空间数据查询 1、空间数据查询的含义 从空间数据库中找出所有满足属性约束条件和空间约束条件的地理对象。 空间数据查询的一般过程 2、空间数据查询…

Understanding G1 GC Logs--转载

原文地址&#xff1a;https://blogs.oracle.com/poonam/entry/understanding_g1_gc_logs Understanding G1 GC Logs By Poonam-Oracle on Jun 18, 2012 The purpose of this post is to explain the meaning of GC logs generated with some tracing and diagnostic options fo…

Dart语言精简入门介绍

Dart语言精简入门介绍 1、介绍 Dart 在设计时应该是同时借鉴了 Java 和 JavaScript和kotlin 面向对象 JIT&AOT&#xff1a;JIT&#xff08;Just in Time&#xff09;优点&#xff1a;即时编译&#xff0c;开发期间更快编译&#xff0c;更快的重载&#xff1b;缺点&#…

WPF 窗口居中 变更触发机制

本文经原作者授权以原创方式二次分享&#xff0c;欢迎转载、分享。原文作者&#xff1a;唐宋元明清原文地址&#xff1a;https://www.cnblogs.com/kybs0/p/7420767.html窗口居中 & 变更触发机制解决&#xff1a;1&#xff09;单实例窗口&#xff0c;窗口每次隐藏后再显示时…

[转]5分钟实现Android中更换头像功能

5分钟实现Android中更换头像功能 写在前面&#xff1a; 更换头像这个功能在用户界面几乎是100%出现的。通过拍摄照片或者调用图库中的图片&#xff0c;并且进行剪裁&#xff0c;来进行头像的设置。 功能相关截图如下&#xff1a; 下面我们直接看看完整吧&#xff1a; public cl…

Excel VBA窗体上打印系统时间print now出错原因及解决方案

如图所示,需要在窗体上显示当前系统时间: 首先,我们看一下now函数的原型: Now 函数   语法:Now   说明:返回一个 Variant (Date),根据计算机系统设置的日期和时间来指定日期和时间。   示例: Private Sub CommandButton1_Click()Dim a As Varianta = NowMsgBox…