news 2026/5/9 13:13:35

C 语言11 函数传参与递归

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
C 语言11 函数传参与递归

函数的参数传递

1.值传递,实参数通过赋值运算符把参数内容赋值给形参的形式,形参是实参的一个副本。数据内容是相同的。实参的内存空间和形参的是独立的。

值传递只能读取实参的值,不能进行修改。

2.地址传递。实参传递变量的内存地址值。即可以读实参的数据的值,也可以修改。

一维整形数组传参 需要传size

#include<stdio.h> 9 //逆序 10 int revert_array(int a[],int size) 11 { 12 int i = 0; 13 for(i=0;i<size/2;i++) 14 { 15 int t = a[i]; 16 a[i] = a[size-1-i]; 17 a[size-1-i] = t; 18 } 19 return 0; 20 } 21 //冒泡 22 int bubble_sort(int array[],int size) 23 { 24 int i=0,j=0; 25 for(i=size-1;i>0;i--) 26 { 27 for(j=0;j<i;j++) 29 if(a[j]>a[j+1]) 30 { 31 int t = a[j]; 32 a[j] = a[j+1]; 33 a[j+1] = t; 34 } 35 } 36 } 37 return 0; 38 } 39 int select_sort(int array[],int size) 40 { 41 int i=0,j=0; 42 for(i=0;i<size-1;i++) 43 { 44 for(j=i+1;j<size-1;j++) 45 { 46 if(a[i]>a[j]) 47 { 48 int t = a[i]; 49 a[i] = a[j]; 50 a[j] = t; 51 } 52 } 53 } 54 } 55 int main() 56 { 57 srand(time(NULL)); 58 int size = sizeof(array)/sizeof(array[0]); 59 int array[10]={0}; }> 60 61 revert_array(a[],size); 62 return 0; ]> 63 }

一维字符数组传参 不用传size


函数的递归

在函数内部,自己调用自己的函数调用被称为函数的递归

属于循环的一种表现形式,区别是会使用栈空间。

需要设置合理的退出条件;递归的层次不要太深,会消耗大量的内存,可能会导致程序崩溃。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/9 13:11:33

信号处理加速库CgemmOperation C++ Demo

信号处理加速库CgemmOperation C Demo 【免费下载链接】sip 本项目是CANN提供的一款高效、可靠的高性能信号处理算子加速库&#xff0c;基于华为Ascend AI处理器&#xff0c;专门为信号处理领域而设计。 项目地址: https://gitcode.com/cann/sip 介绍 该目录下为信号处…

作者头像 李华
网站建设 2026/5/9 13:06:56

联邦学习在物联网场景下的性能评估与基准测试实践

1. 项目概述&#xff1a;当联邦学习遇上物联网&#xff0c;我们如何量化其真实性能&#xff1f;如果你正在关注边缘智能或者分布式机器学习&#xff0c;那么“联邦学习”这个词对你来说一定不陌生。它被誉为解决数据孤岛和隐私保护问题的关键技术&#xff0c;尤其是在物联网这个…

作者头像 李华
网站建设 2026/5/9 13:06:30

工业机器人搬运工作站虚拟仿真-工件装配仿真项目报告

一、项目基本信息 项目名称&#xff1a;基于 RobotStudio 的工业机器人三工件顺序装配仿真 二、项目任务描述 本项目完成 3 个工件全自动装配流程&#xff1a; 将 装配零件 1 从仓库搬运至变位机夹具台&#xff1b; 将 装配零件 2 从仓库取出并放置到零件 1 中&#xff1b;…

作者头像 李华
网站建设 2026/5/9 13:03:46

CANN算子测试挑战赛提交

团队信息 【免费下载链接】cann-competitions 本仓库用于 CANN 开源社区各类竞赛、开源课题、社区任务等课题发布、开发者作品提交和展示。 项目地址: https://gitcode.com/cann/cann-competitions 团队名称&#xff1a;群星闪耀时所属单位&#xff1a;南昌航空大学团队…

作者头像 李华
网站建设 2026/5/9 13:03:05

CANN/asc-devkit Arrive同步函数API

Arrive 【免费下载链接】asc-devkit 本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言&#xff0c;原生支持C和C标准规范&#xff0c;主要由类库和语言扩展层构成&#xff0c;提供多层级API&#xff0c;满足多维场景算子开发诉求。 项目地址: https://gitcode.com/can…

作者头像 李华