嵌入式面试 C语言 编写函数把一数组里内容前后颠倒 用指针实现

news/2025/2/25 15:02:40

编写函数把一个数组里所有存储区的内容前后颠倒
加入数组里原有内容是1 2 3 4 5
颠倒后的内容是5 4 3 2 1
用指针编写这个函数

/CSD1702/biaoc/day10 10reverse.c

/*
	指针练习
*/
#include <stdio.h>
int *reverse(int *p_num,int size){	//补充:把数组第一个存储区地址当做返回值使用,不加const关键字
    int *p_head = p_num, *p_tail = p_num + size - 1, tmp = 0;
    while (p_head < p_tail){    //
        tmp = *p_head;		//补充:将头指针和尾指针所捆绑的存储区做交换
        *p_head = *p_tail;
        *p_tail = tmp;
        p_head++;    //交换后前面的地址+1 数字向后移1位
        p_tail--;    //交换后后面的地址-1 数字向前移1位
    }
    return p_num;    //返回数组第一个地址
}
int main(){
    int arr[] = {1,2,3,4,5},num = 0;
    int *p_num = reverse(arr,5);
    for(num = 0;num <= 4;num++){
        printf("%d ",*(p_num + num));
    }
    printf("\n");
    return 0;
}
结果:
5 4 3 2 1

http://www.niftyadmin.cn/n/693804.html

相关文章

Transformer入门学习

摘要&#xff1a;记录一下自己在10月份参加DataWhale组队学习transformer的所得。这篇博客主要关于transformer基本原理的学习和一个输入序列转换的简单demo&#xff0c;并补充了一些transformer在CV领域的variants&#xff0c;希望本次组队学习能帮助自己快速入门&#xff0c;…

嵌入式课程笔记_01_STDC01_20190303

文章目录01_STDC01day1&#xff1a; Linux操作系统和文件系统 、 Linux常见命令STDC01_day01_01-Linux操作系统和文件系统.tsSTDC01_day01_02-文件系统.tsSTDC01_day01_03-Linux常见命令01.tsSTDC01_day01_04-Linux常见命令02.tsSTDC01_day01_05-vi编辑器01.tsSTDC01_day01_06-…

python如何下载zip文件_Python:如何下载zip文件

这是一个更强大的解决方案&#xff0c;使用urllib2以块的形式下载文件并打印下载状态import osimport urllib2import mathdef downloadChunks(url):"""Helper to download large filesthe only arg is a urlthis file will go to a temp directorythe file will…

miniimagenet的图像预处理代码_Python中的图像增强技术

策划 | 刘燕 作者 | Renu Khandelwal 翻译 | 王文刚 编辑 | Linda AI 前线导读&#xff1a;图像增强是一种非常强大的技术&#xff0c;针对现有图像人为创建各种变化以扩展图像数据集&#xff0c;例如缩放现有图像、将现有图像旋转几度、剪切或裁剪图像等等。在本文中&#xff…

嵌入式课程笔记_02_STDC02_20190308

文章目录02_STDC02day1&#xff1a; 二重循环 、 while循环和do循环 、 缓冲区STDC02_day01_01-break和continue02.tsSTDC02_day01_02-二重循环01.tsSTDC02_day01_03-二重循环02.tsSTDC02_day01_04-while循环和do循环01.tsSTDC02_day01_05-while循环和do循环02.tsSTDC02_day01_…

asp.net一键服务器小工具_一个小工具帮你搞定实时监控Nginx服务器

Linux运维工程师的首要职责就是保证业务7 x 24小时稳定的运行&#xff0c;监控Web服务器对于查看网站上发生的情况至关重要。关注最多的便是日志变动&#xff0c;查看实时日志文件变动大家第一反应应该是tail -f /path/to/log命令吧&#xff0c;但是如果每个网站的访问日志都是…

k8s docker mysql_k8s记录-docker部署mysql和nginx

1.docker部署mysql拉取镜像&#xff1a;docker pull mysql执行发布&#xff1a;docker run -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD123456 -d mysql--name&#xff1a;容器名&#xff0c;此处命名为mysql-e&#xff1a;配置信息&#xff0c;此处配置mysql的root用户…

嵌入式面试 C语言 sizeof与strlen有哪些区别

转自&#xff1a;C和C程序员面试秘籍 1.sizeof是操作符&#xff0c;strlen是函数&#xff08;需要包含string.h头文件&#xff09; 2.sizeof操作符的结果类型时size_t&#xff0c;它在头文件中typedef为unsigned int类型&#xff0c;该类型保证能容纳实现所建立的最大对象的字…