c语言6函数和算法创新

近半个月目标 学会使用函数进行模块化程序设计 学会调试由多个函数(包含库函数)组成的程序 主要内容 模块化程序设计思想 函数定义和函数调用、函数原型(函数声明) 函数的参数和返回值 重点、难点 函数的定义和调用(重点) 如何定义函数 如何调用函数 函数的参数和返回值(难点) 函数之间如何实现交流 程序设计的艺术 《三国演义》中有这样一段描写: 懿问曰:“孔明寝食及事之烦简若何?”使者曰:“丞相夙兴夜寐,罚二十以上皆亲览焉。所啖之食,日不过数升。”懿顾谓诸将曰:“孔明食少事烦,其能久乎?” 此话音落不久,诸葛亮果然病故于五丈原。 “事无巨细”,“事必躬亲” 管理学的观点是极其排斥这种做法的,认为工作必须分工,各司其职 其中的思想,在程序设计里也适用 对比实现同一功能的两个程序 #include /*求圆的面积和周长*/ void main() { double r,c,s; const double pi = 3.1415926; printf("Please input r:"); scanf("%lf",&r); c = 2 * pi * r; s = pi * r * r; printf("c = %f\n",c); printf("s = %f\n",s); } #include void GetCirc(double r)/*定义函数求圆周长*/ { const double pi = 3.1415926; printf("c = %f\n", 2 * pi * r); } void GetArea(double r) /*定义函数求圆面积*/ { const double pi = 3.1415926; printf("s = %f\n", pi * r * r); } void main() { double r; printf("Please input r:"); scanf("%lf",&r); GetCirc(r); /*调用函数求圆周长*/ GetArea(r); /*调用函数求圆面积*/ } 程序设计的艺术 程序设计有两大最高级的艺术 算法设计艺术 结构设计艺术 C语言为程序的结构提供了两样武器 函数和模块 函数(function)是结构设计的最基本单位 “一个程序应该是轻灵自由的,它的子过程就象串在一根线上的珍珠。” Geoffrey James的《编程之道》 函数 库函数 自定义函数 主函数 这些函数都是平等的,没有主从之分,可以随意相互调用 main函数由系统调用,也可以被其他函数调用,只不过从来不这么做 函数是C程序的基本单位 #include double add(double x,double y) /*编写函数,也称函数定义*/ { return x + y; } void main() { double a,b,sum; scanf("%lf,%lf",&a,&b); sum = add(a,b); /*使用函数,也称函数调用*/ } 函数定义 语法: 函数返回值 函数名(参数表) { 定义部分 可执行部分 } 课堂练习 从键盘上键入某学生数学、物理和生物这三门课的成绩,计算这几个科目的平均分。要求用自定义函数实现 主函数 int main() { double math,phy,bio,aver; scanf("%lf, %lf , %lf ",&math,&phy,&bio); aver = GetAver(math,phy,bio); printf(" average = %f\n",aver); } /*函数功能:求三门课的平均分 函数参数:双精度型x,存放数学成绩 双精度型y,存放物理成绩 双精度型z,存放生物成绩 函数返回值:双精度类型,返回平均分 */ double GetAver(double x,double y,double z) { return (x + y + z)/3; } void GetAver(double x,double y,double z) { printf(" average = %f",(x + y + z)/3

c语言算法6,c语言6函数和算法.ppt相关推荐

  1. 【玩转嵌入式屏幕显示】(三)TFT-LCD屏幕打点 + 画线 + 画矩形 + 画圆Bresenham算法实现(基于打点函数,算法可移植到任何屏幕的驱动程序之上)

    0. 引言 TFT-LCD屏幕的画直线.画斜线.画矩形.画圆等算法都是基于打点函数的,所以此程序可以移植到任何屏幕的基本驱动程序之上. 1. 打点函数 -- 底层函数(移植需修改) 打点函数其实就是屏 ...

  2. python回归算法_基于Python的函数回归算法验证

    看机器学习看到了回归函数,看了一半看不下去了,看到能用方差进行函数回归,又手痒痒了,自己推公式写代码验证: 常见的最小二乘法是一阶函数回归 回归方法就是寻找方差的最小值 y = kx + b xi, ...

  3. 大白话5分钟带你走进人工智能-第九节梯度下降之函数最优化算法和梯度下降代码过程解析(4)

        第九节梯度下降之函数最优化算法(4) 上一节中我们介绍了梯度下降的两种方式,批量梯度下降和随机梯度下降的两种方式,介绍了其具体的梯度下降的方式.本节的话,我们介绍一种函数最优化的算法.以后一听 ...

  4. R语言使用DALEX包的model_profile函数对caret包生成的多个算法模型的离散变量进行分析、使用偏依赖图(Partial Dependence Plots)解释某个离散特征和目标y的关系

    R语言使用DALEX包的model_profile函数对caret包生成的多个算法模型的离散变量进行分析.使用偏依赖图(Partial Dependence Plots)解释某个离散特征和目标值y的关 ...

  5. R语言使用DALEX包的model_performance函数对caret包生成的多个算法模型进行残差分布分析并使用箱图进行残差分布的可视化

    R语言使用DALEX包的model_performance函数对caret包生成的多个算法模型进行残差分布分析并使用箱图进行残差分布的可视化 目录

  6. R语言使用caret包构建岭回归模型(Ridge Regression )构建回归模型、通过method参数指定算法名称、通过trainControl函数控制训练过程

    R语言使用caret包构建岭回归模型(Ridge Regression )构建回归模型.通过method参数指定算法名称.通过trainControl函数控制训练过程 目录

  7. R语言使用DALEX包的model_performance函数对caret包生成的多个算法模型进行残差分布分析并可视化每个模型的残差反向累积分布图

    R语言使用DALEX包的model_performance函数对caret包生成的多个算法模型进行残差分布分析并可视化每个模型的残差反向累积分布图 目录

  8. R语言Apriori算法关联规则挖掘:使用interestMeasure函数评估挖掘到的规则(包括覆盖率(coverage)和FishersExactTest)、置信度最高的五条规则(top five

    R语言Apriori算法关联规则挖掘:使用interestMeasure函数评估挖掘到的规则(包括覆盖率(coverage)和FishersExactTest).置信度最高的五条规则(top five ...

  9. Go语言逆向技术:恢复函数名称算法

    摘要:在对程序做安全审计.漏洞检测时,通常都需要对程序做逆向分析,本文在没有符号表的情况下,提出了一种恢复函数名称的算法,方便对go语言二进制文件进行逆向分析,提升分析效率. 本文分享自华为云社区&l ...

最新文章

  1. https://www.exploit-db.com/下载POC比较完善的代码
  2. android crash 定位,Android NDK Crash 定位分析
  3. linux退出远程登录命令,【linux命令】Linux 如何查看和关闭 ssh pts/n 远程登录用户...
  4. Java虚拟机JVM常用的几种回收算法和垃圾回收器
  5. vue项目和react项目中禁止eslint
  6. 背包问题的二进制优化
  7. Java ArrayList的Array,Array的ArrayList
  8. js 线性最小二乘回归线方程
  9. 2008年全国大学生数学建模D题(加附件)
  10. WPS解决账号登录验证问题(软件抓包重写过验证通用方法)
  11. android sdk版本8.0,把targetSdkVersion设置为26(Android 8.0)需要注意的地方
  12. 计算机总是无法完成更新失败,Win10系统更新失败无法完成更新正在撤销更改的解决方法...
  13. 三极管构成的电流负反馈放大器
  14. Selenium模拟浏览器访问
  15. 过孔为什么不能打焊盘上?我就想打,怎么办?
  16. Android 12 “致命”崩溃解决之路
  17. elementui table 表格固定列最后一行显示不全
  18. rda分析怎么做_R语言做冗余分析(RDA)的一个简单小例子
  19. 【实战模拟】下载安装并配置虚拟kali Linux 和 OWASP Broken Web Apps 靶机
  20. H3 BPM工作流 javaScript 页面展示问题

热门文章

  1. 类型数据合并去重 mysql_MySQL基础知识 数据类型和数据表管理
  2. python绘制条形图用什么函数_Python绘制正余弦函数图像完整代码
  3. The Innovation | Volume 2 Issue 2 正式出版
  4. 生信小白7行代码画一个高颜值的世界地图
  5. 英国JIC院士3.8万英镑招博后-植物代谢物与微生物组-截止6月27日
  6. 一作解读:Microbiome马铃薯疮痂病与土壤微生物组关系新进展
  7. 最前沿的科学, 寻找最聪明的你—“宏基因组”公众号编辑招募
  8. Cell Research丨潘涛/骆观正合作团队揭示肠道菌群调控宿主RNA甲基化和基因表达新机制...
  9. ggplot2笔记5:通过图层构建图像
  10. 轻松看懂机器学习十大常用算法