C语言:函数与参数传递
一、什么是函数计算机为了减少重复写代码的痛苦更方便人们将一些特殊的使用频率较高的代码进行使用创造出了函数我们只需要将其用特定的方法封装在使用时就不需要关注实现的细节 直接当做公式直接使用。二、函数的五大要素我们可以把函数当成一个工厂1.返回类型 工厂做什么 eg: int这个函数要去得到一个整数2.函数名 工厂名 告诉别人是做什么的见名知意3.函数参数列表 工厂原材料 这个函数可能需要什么参数进行处理4.函数体 加工过程 对参数列表进行相应的处理从而得到结 果就是具体的流程5.返回值 加工后得到的产品 函数体处理后的结果用return关键字交 出去举个// 对应上面的五大要素 int add(int a, int b) { // 1.返回类型(int) 2.函数名(add) 3.参数(a, b) int result a b; // 4.函数体加工过程 return result; // 5.返回值return 交出产品 }其中参数列表中可以没有参数也可以有多个。三、参数传递值传递// 加法函数把两个数加起来并返回结果 int add(int num1, int num2) { int sum num1 num2; return sum; // 把加工好的产品sum交出去 } int main() { int a 5; int b 8; // 调用工厂add把 a 和 b 传进去用 c 接收返回值 int c add(a, b); printf(a b %d\n, c); return 0; }在main里a是5b是8。当我们调用add(a, b)时计算机把5和8这两个值拷贝给了num1和num2。四、举例下面我将写几个简单的函数帮助我们更好的理解函数。1.判断素数素数一个大于1的自然数除了1和他自己没有别的数可以将其整除那他就是素数。int Is_Prime(int n) { if (n 1) { return 0; // 1 和小于 1 的数不是素数 } int num 0; // 计数器记录在 2 到 n-1 之间有几个能整除 n 的数 for (int i 2; i n - 1; i) { if (n % i 0) { num; //如果能找到可以整除n的数就加一 } } // 如果 num 是 0说明除了 1 和它自己没有别的因数了 if (num 0) return 1; // 是素数 else return 0; // 不是素数 }2.判断回文数回文数如果将一个数字翻转过来看与原数字相同的话那他就是一个回文数 eg: 12321int isPalindrome(int n) { // 负数不是回文数 if (n 0) { return 0; } int Or_num n; // 保存原始数字 int Re_num 0; // 用于存储翻转后的数字 while (n 0) { int num n % 10; // 拿到最后一位 Re_num Re_num * 10 num; // 拼接到新数字末尾 n n / 10; // 去掉原数字最后一位 } // 判断翻转后是否等于原数字 if (Re_num Or_num) { return 1; // 是回文数 } else { return 0; // 不是回文数 } }3.判断水仙花数水仙花数一个三位数它的每个位上的数字的“立方和”等于它自己int isNarcissistic(int n) { //确保它是三位数 if (n 100 || n 999) { return 0; } int Or_num n; int sum 0; // 用于累加各位的立方和 while (n 0) { int num n % 10; // 拿到最后一位 sum sum num * num * num; n n / 10; // 去掉最后一位 } // 判断立方和是否等于原数字 if (sum Or_num) return 1; // 是水仙花数 else return 0; // 不是 }

相关新闻

SecureCRT 8.5汉化便携版:嵌入式串口调试的免安装解决方案

SecureCRT 8.5汉化便携版:嵌入式串口调试的免安装解决方案

简介:SecureCRT汉化中文8.5便携版是一款面向嵌入式开发、网络运维及串口调试初学者与工程师的轻量级终端工具,解决传统SecureCRT需安装、配置复杂、语言不友好等痛点,开箱即用,支持串口、SSH、Telnet等多种协议连接与会话管理。资…

2026/10/15 21:17:26 阅读更多 →
Excel技巧大全不会用?从筛选高频技能到打造个人技能卡片

Excel技巧大全不会用?从筛选高频技能到打造个人技能卡片

简介:一份汇集一百六十三种Excel使用技巧的文档,面向需要提升表格处理效率的办公人员、数据分析师及备考Office技能认证的学员,也可作为企业内训与自学参考。内容按基本方法、数据处理、公式与函数、图表可视化、宏与编程等模块系统组织&…

2026/10/15 21:16:24 阅读更多 →
从 PHP 到 AI + Golang,程序员自救转型手记(四十二):用 TaoToken 统一 Key 打通管理员账号 CRUD 接口

从 PHP 到 AI + Golang,程序员自救转型手记(四十二):用 TaoToken 统一 Key 打通管理员账号 CRUD 接口

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/15 21:16:24 阅读更多 →

最新新闻

Unity Profiler性能分析实战:从真机采集到GC优化完整指南

Unity Profiler性能分析实战:从真机采集到GC优化完整指南

1. 为什么每个Unity开发者都该把Profiler当日常工具做Unity这几年,我见过太多项目在编辑器里跑得飞起,一打包到真机就卡成幻灯片。帧率从90掉到22,发热烫手,玩家骂声一片,团队却找不到瓶颈在哪。这种场景几乎每个中大型…

2026/10/15 22:09:39 阅读更多 →
SolidWorks干涉检查假干涉排查:隐藏实体与压缩的区别及选项设置

SolidWorks干涉检查假干涉排查:隐藏实体与压缩的区别及选项设置

1. 先别急着翻设计树:干涉检查报出的"假干涉"从哪来做整机装配干涉检查的时候,我猜你肯定遇过这种场面:明明把弹簧、密封圈、线束、装饰罩这些零件都隐藏了,图纸看着清爽得很,结果一点"干涉检查"&…

2026/10/15 22:09:39 阅读更多 →
collect.js 严格比较设计指南:全方法默认 `===` 的实现原理与 Laravel 差异对照

collect.js 严格比较设计指南:全方法默认 `===` 的实现原理与 Laravel 差异对照

开发工具 【免费下载链接】collect.js 💎 Convenient and dependency free wrapper for working with arrays and objects 项目地址: https://gitcode.com/gh_mirrors/co/collect.js 点击查看 免费下载 导读 本文围绕 collect.js 的**严格比较&#x…

2026/10/15 22:09:39 阅读更多 →
6D位姿估计综述:RGB-D、点云、RGB三条路线选型与复现避坑指南

6D位姿估计综述:RGB-D、点云、RGB三条路线选型与复现避坑指南

简介:这份资源是面向机器人视觉与三维感知方向学习者、研究者的6D位姿估计综述文献总结,以思维导图形式梳理了Vision-based Robotic Grasping综述的核心脉络,帮助读者快速建立从物体定位、位姿估计到抓取估计的整体认知框架。内容覆盖基于RGB…

2026/10/15 22:09:39 阅读更多 →
memtester内存压力测试实战:从原理到脚本化压测

memtester内存压力测试实战:从原理到脚本化压测

简介:这是一份内存压力测试工具 memtester 4.1.2 的完整源码包,面向 Linux/Unix 系统管理员、运维工程师与底层软硬件开发者,用于检测内存条位翻转、数据丢失、地址错误等不稳定因素,也可作为服务器上线前压力验证和故障排查的有力…

2026/10/15 22:09:39 阅读更多 →
MySQL时间类型选型:DATETIME与TIMESTAMP底层差异与避坑指南

MySQL时间类型选型:DATETIME与TIMESTAMP底层差异与避坑指南

MySQL 的时间类型,尤其是在 DATETIME 和 TIMESTAMP 之间反复纠结的情况,我见过太多了。很多人直到线上出现“时间差8小时”或者“2038年数据写不进去”才发现自己对这两个类型的理解还是靠猜。今天把这俩家伙的底层逻辑、行为差异、性能取舍和选型思路一…

2026/10/15 22:08:39 阅读更多 →

日新闻

Docker Compose 容器化部署 ChirpStack LoRaWAN 网络服务器实战

Docker Compose 容器化部署 ChirpStack LoRaWAN 网络服务器实战

1. 为什么选择容器化方式部署 LoRa 网络服务LoRa 物联网项目落地时,网络服务器是整个链路的核心枢纽。它负责接收网关上报的数据包、完成去重与解密、再把有效载荷分发给上层应用。早期大家习惯把网络服务器直接装在物理机上,依赖一堆系统库和特定版本的…

2026/10/15 0:00:46 阅读更多 →
共享LLM服务下的跨模型自动扩缩容:Kubernetes实战与避坑指南

共享LLM服务下的跨模型自动扩缩容:Kubernetes实战与避坑指南

1. 共享推理服务里,扩缩容到底难在哪做过大模型推理服务部署的人,大概都经历过这样的场景:一个团队共用一套推理集群,A 业务跑的是 7B 的小模型,B 业务跑的是 72B 的大模型,C 业务白天流量高、晚上几乎归零…

2026/10/15 0:00:46 阅读更多 →
Systemd 启动阶段根文件系统只读之谜:fstab 与 remount-fs 服务深度解析

Systemd 启动阶段根文件系统只读之谜:fstab 与 remount-fs 服务深度解析

1. 引子:一次内核恐慌引发的追查先从一个真实场景说起。某次我给一台老旧的嵌入式设备折腾系统裁减,为了把启动时间压进两秒以内,我手贱地把一串自认为“没用”的 systemd 服务给 disable 了,其中就包括systemd-remount-fs.servic…

2026/10/15 0:00:46 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/15 16:18:54 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/15 19:41:51 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/15 13:48:15 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/15 0:14:36 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 22:45:47 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/15 9:49:14 阅读更多 →