题目:创建一个C语言控制台程序,除了main函数外,自定义两个被调用的函数,并要求至少有一个函数包含有参数。

解答:

首先我们要了解,函数包含哪些组成结构,有四个部分,分别是:函数类型、函数名称、函数参数、函数体

int main(int s) // 1、int 为函数的类型,2、main 为函数的名称 ,3、int s 为函数的参数

{

printf("hello world"); //4、这里的两句为函数的执行结构,或函数体

return 0; //是否有返回值要参考 函数的类型,如果是void类型则没有return

}

我们定义一个函数,要思考的是:

1、我这个函数的名称是什么?对应的是函数名称。

2、我这个函数需要从外界获取什么?对应的是函数参数,也就是函数的输入,一个函数可以有零个或多个输入。

3、我这个函数需要做些什么?对应的是函数体。

4、我这个函数做完工作后,需要反馈给外界什么?对应的是函数类型,也就是函数的输出,一个函数可有有零个或一个输出(需要多个输出的时候我们可以用全局变量或结构体或数组)。

当然,最重要的是,你要思考为啥要创建函数,函数的作用主要还是把一些功能化的代码或重复性的代码提出出来,让我们的代码更加优雅、简洁、锋利。

比如,我们可以把上课这个功能提取成函数,那就要思考:“上课”这个函数名称是什么?我要从外界获取什么参数?“上课”需要执行什么函数体?函数执行完后需要反馈什么消息给调用者?

注意,函数的注释至少包括以下三个:

1、用途:你这个函数是干嘛的。

2、输入:输入的是什么数据类型格式,代表的是什么。

3、输出:输出的是什么数据类型格式,代表的是什么。

为啥要写清楚输入和输出呢?因为大部分开发中,很多函数我们是没有参与写的过程的,而都是其他人写的,同样,你写的函数,别人也不需要知道函数体是什么内容(特别是很多函数都已经被封装起来了),只需要知道:函数的名称,函数是干嘛的,我调用你这个函数要输入什么东西,我调用完你这个函数可以得到什么东西。

/*

*作者:刘日辉

*用途:上课

*输入:一维字符数组,代表的是:上课教室名称

*输出:整形,代表的是:1上课成功,0找不到教室,-1课程取消

*/

int onClass(char className[])

{

if()//括号里面写具体的判断情况

{

printf("上课成功,地点是%s\n",className);

return 1;

}

else if()//括号里面写具体的判断情况

{

printf("找不到教室%s\n",className);

return 0;

}

else if()//括号里面写具体的判断情况

{

printf("老师说不用上课了\n");

return -1;

}

}

比如“开灯”这个函数,别人通过告诉你开教室里面的第几盏灯,你执行完后反馈给别人是开灯的结果:

/*

*作者:刘日辉

*用途:打开教室的灯

*输入:整形,具体开哪一盏灯

*输出:整形,开灯的结果,1代表开灯成功,0代表没有电了

*/

int OnTheLight(int lightIndex)

{

//我这不做判断了,现实生活中,我们要根据不同的代码情况来得出不同的返回值

printf("已经开灯了,灯的号数是%d",lightIndex);

return 1;

}

代码:

效果:

c语言程序设计 第七章函数,《C语言程序设计》第七章随堂练习:自定义函数相关推荐

  1. R语言使用ggplot2可视化交叉曲线(Curved lines defined with functions):基于自定义函数可视化交叉曲线、使用curve_intersect函数计算曲线交叉点

    R语言使用ggplot2可视化交叉曲线(Curved lines defined with functions):基于自定义函数可视化交叉曲线.使用curve_intersect函数计算曲线交叉点 目 ...

  2. c语言中系统函数设定像素,在imag中对每个像素应用自定义函数的快速方法

    我正在寻找一种更快的方法来应用一个自定义函数到一个图像,我用来删除蓝色背景.我有一个函数可以计算出每个像素与背景中蓝色的距离.带有循环的原始代码如下所示:def dist_to_blue(pix): ...

  3. mysql getnum函数_Mysql中实现提取字符串中的数字的自定义函数分享

    因需要在MysqL的数据表中某一字符串中的字段提取出数字,在网上找了一通,终于找到了一个可用的MysqL函数,可以有效的从字符串中提取出数字. 该MysqL提取出字符串中的数字函数如下: CREATE ...

  4. 《零基础看得懂的C语言入门教程 》——(十一)C语言自定义函数真的很简单

    一.学习目标 了解C语言的自定义函数的使用方法 了解C语言自定义函数的传参 了解C语言自定义函数的返回值 目录 C语言真的很难吗?那是你没看这张图,化整为零轻松学习C语言. 第一篇:(一)脱离学习误区 ...

  5. c语言自定义函数格式化,自定义函数的形式

    c语言程序设计题:请用自定义函数的形式编程实现,代码: #include 请用自定义函数的形式编程实现 CSS布局HTML小编今天和大家分享 s = m. + n. + k.,m.n.k 从键盘输入( ...

  6. [C语言] 函数:库函数--自定义函数--函数的调用--练习--详解<个人>------(1)

    文章目录 前言 一. 函数是什么? 二. C语言中函数的分类 三. 库函数 四. 自定义函数 五. 函数的调用 六. 练习 总结 前言 本节内容主要记录函数的相关内容,其中包括:库函数,自定义函数,函 ...

  7. c语言函数详解1——自定义函数

    这篇文章理论性知识比较多,不过对于初学者对于函数的理解会有更深层次的帮助 目录 c语言的函数--子程序 自定义函数 c语言的函数--子程序 *是大型程序中的某部分代码,由一个或者多个语句组成,她负责完 ...

  8. 11.函数(C语言)+递归函数(超清晰图解递归)

    函数 1.函数是什么? 2.库函数 1)库函数的基本知识 2)初识几个库函数 3.自定义函数 自定义函数的组成 4.函数参数 1 )实际参数(实参): 2) 形式参数(形参): 5.函数调用 1) 传 ...

  9. Spark SQL自定义函数_第五章

    1.自定义函数分类 类似于hive当中的自定义函数, spark同样可以使用自定义函数来实现新的功能. spark中的自定义函数有如下3类 1.UDF(User-Defined-Function) 输 ...

  10. matlab 调用函数本身,怎么在matlab自定义函数中再调用一个自定义函数?

    Matlab自定义函数的七种方法1.函数文件+调用命令文件:需单独定义一个自定义函数的M文件.2.函数文件+子函数:定义一个具有多个自定义函数的M文件.3.Inline:无需M文件,直接定义.4.匿名 ...

最新文章

  1. 台式计算机不能有线上网,台式电脑怎么样不能有线就可以连接网络,赶紧看看...
  2. S2SH整合所需jar包及其详解
  3. 百度地图API公交检索示例 - 标绘结果路线、返回结果集
  4. PCL学习笔记02:在ROS下建立编译链接PCL模块
  5. Docke--利用 commit 理解构建镜像
  6. python随机数调用
  7. java值传递和引用传递的例子,Java中的值传递和引用传递实例介绍
  8. JS实现静默发送邮件功能(选择填报提交后发送、数据查询后发送参考前者)
  9. redis插槽(slot)分配详解(集群动态新增或删除结点)
  10. mybatis 依赖于jdbc_面试BAT问的最多的27道MyBatis 面试题(含答案和思维导图总结)...
  11. 知道域名差服务器系统,对DNS域名系统的抓包分析
  12. php tcpdf 分层,PHP 使用tcPdf 生成pdf文件
  13. 终于找到了,中国知网免费下载论文诀窍!
  14. 计算机sci二区期刊,SCI二区期刊汇总表
  15. 怎么用diskgenius扩大c盘,超简单。
  16. 读 《硬派健身》:健身百问(不断更新)
  17. 网络电话除了打电话还能用来做什么?
  18. linux网络与防火墙
  19. 使用postman传list参数,使用@RequestBody接收list对象接收不到,对象的属性值都是null
  20. 用安卓手机三步获取root权限教程

热门文章

  1. 虚拟机启动提示Probing EDD (edd=off to disable)错误
  2. 罗浩博士-Bag of Tricks and A Strong Baseline for ReID
  3. jos中boot执行过程
  4. 化工原理 --- 流体流动3
  5. 马斯克年薪:0!美股CEO薪酬排名出炉:老黄比苏妈还低近600万美元
  6. 阿里云【名师课堂】Java高级开发18 ~ 21:Annotation
  7. ELK 面试题及答案
  8. 清除U盘内所占的隐藏空间
  9. 专访车慧总裁刘琦:大数据时代的汽车营销才刚刚开始
  10. idea 爆红问题总结并解决