C语言中的函数在其他编程语言中也称为过程或子程序。要执行任务,我们可以创建函数。一个函数可以被多次调用。 它提供了模块化和代码可重用性。

C语言中函数的优点

函数有很多优点。它们分别如下 -

(1)代码可重用性

通过在CC语言中创建函数,开发人员可以多次调用它。 所以开发人员不需要一次又一次地编写相同的代码。

(2)代码优化

它使代码优化,我们不需要编写很多代码。

假设你要检查3个数字(781,883和531)是否是素数。如果不使用函数,需要编写3次计算素数逻辑。所以有重复的代码。

但是,如果您使用函数,则只需将计算的逻辑编写一次即可重复使用多次。

函数类型

C语言编程中有两种类型的函数:

库函数:是在C头文件中声明的函数,如:scanf(),printf(),gets(),puts(),ceil(),floor()等。

用户定义的函数:是由C程序员自己创建的函数,以便他/她可以使用它多次。 它可以降低大型程序的复杂性并优化代码。

函数声明

C语言中创建函数的语法如下:

return_type function_name(data_type parameter...){

//code to be executed

}

返回值

C语言函数可以返回或不返回该函数的值。如果您不需要从函数返回任何值,请对返回类型使用void。

我们来看一个C语言函数的简单示例,它不会从函数返回任何值。

没有返回值的示例:

void hello(){

printf("hello c");// 没有返回值,只是打印一个字符串

}

如果要从函数返回返回某个/些值,则需要使用任何数据类型,如:int,long,char等。返回类型取决于要从函数返回的值。

我们来看一个C语言函数的简单例子,它从函数返回int值。

返回值示例:

int get(){

return 10;

}

在上面的例子中,我们必须返回10作为一个值,所以返回类型是int。 如果要返回浮点值(例如10.2,3.1,54.5等),则需要指定使用float作为函数的返回类型。如下所示 -

float get(){

return 10.2;

}

现在,需要来了解如何调用函数,获取函数的返回值。

C语言函数中的参数

C语言函数可能有0个或更多个参数。可以在C程序中具有任何类型的参数,如:int,float,char等。参数也称为形式参数。

没有使用参数的函数示例:

void hello(){

printf("hello c");

}

具有1个参数的函数示例:

int cube(int n){

return n*n*n;

}

具有2个参数的函数示例:

int add(int a, int b){

return a+b;

}

在C语言中调用函数

如果函数返回任何值,则需要调用函数来获取函数返回的值。 在C语言中调用函数的语法如下:

variable=function_name(arguments...);

(1)variable:变量不是强制性的。如果函数返回类型为void,则不能提供变量来接收函数返回的值,因为void函数不返回任何值。

(2)function_name:function_name是要调用的函数的名称。

(3)arguments:调用C语言函数时需要提供参数。它也被称为实际参数(简称:实参)。

调用函数的例子:

hello(); //calls function that doesn't return a value

int value=get(); //calls function that returns value

int value2=add(10,20); //calls parameterized function by passing 2 values

函数示例

1. 没有return语句的函数示例

下面来看看看C语言函数的简单程序,它不从函数返回任何值。创建一个名称为:function的工程,并在这个工程里创建一个源文件:function-without-params.c,其代码如下所示 -

#include

#include

//定义一个无参数函数,简单地打印一个字符串

void hello() {

printf("hello c programming");

}

void main() {

hello(); // 调用函数

hello(); // 再一次调用函数

hello(); // 再一次调用函数

}

执行上面示例代码,得到以下结果 -

hello c programming

hello c programming

hello c programming

2. 带有return语句的C函数示例

我们来看看C语言中一个带有参数的函数程序。

创建一个源文件:function-with-params.c,其代码如下所示 -

#include

// 定义一函数,返回给定参数值的立方值

int cube(int n) {

return n*n*n;

}

// 定义一函数,返回给定两个参数值的最大值

int max(int a, int b) {

if (a > b) {

return a;

}else {

return b;

}

}

void main() {

int result1 = 0, result2 = 0;

int a = 10, b = 20, c = 0;

result1 = cube(2); // 调用函数

result2 = cube(5);

c = max(a, b); //

printf("the cube of 2 is : %d \n", result1);

printf("the cube of 5 is : %d \n", result2);

printf("the max value of %d and %d is :%d \n", a, b, c);

}

执行上面示例代码,得到以下结果 -

the cube of 2 is : 8

the cube of 5 is : 125

the max value of 10 and 20 is :20

¥ 我要打赏

纠错/补充

收藏

加QQ群啦,易百教程官方技术学习群

注意:建议每个人选自己的技术方向加群,同一个QQ最多限加 3 个群。

c语言函数调用用法大全,C语言函数相关推荐

  1. c 语言整人代码大全,C 语言整人代码大全.doc

    C 语言整人代码大全 C 语言整人代码大全 WScript.Echo("嘿,谢谢你打开我哦,我等你很久 拉!"&TSName) WScript.Echo("你是可 ...

  2. 简单c语语言游戏教案大全,大班语言活动教案大全简单趣味

    从小培养幼儿学说普通话的兴趣.同时家长应注意用规范的语言来与幼儿进行日常交谈. 以下是小编精心收集整理的幼儿园大班语言活动方案,下面小编就和大家分享,来欣赏一下吧. 幼儿园大班语言活动方案1 活动目标 ...

  3. c语言编程代码大全(c语言简单代码大全)

    html代码和c语言等编程语言有什么联系吗? HTML叫做超文本标记语言(标准通用标记语言下的一个应用)或超文本链接标示语言,是目前网络上应用最为广泛的语言,也是构成网页文档的主要语言. 怎么修改C语 ...

  4. c语言交朋友问题大全,交朋友语言教案

    基本数据类型 一.概述 本节课将介绍C语言的基本数据类型,课时时间为40分钟.数据是程序的必要组成部分,也是程序处理的对象.运算是对数据进行加工的过程.C语言中的数据既有常量和变量之分,又有类型之别. ...

  5. c语言fputc用法,fputc 和fgetc 函数

    C语言 的 fputc 和fgetc 函数 fputc()函数用于将单个字符写入文件.它将一个字符输出到流. fputc()函数的语法: int fputc(int c, FILE *stream) ...

  6. C语言函数调用一般分,C语言调用声明函数

    先向大哥哥们道个歉哈,积分只有40分,除却紧急问题的20分,就剩下20分咯.希望好心的大哥们不要嫌少哈...嘿嘿,笑笑,,,(:~)(:~)(:~)~~~问题如下:求一元二次方程ax*x bx c=0 ...

  7. c语言函数调用水仙花数,(指针+函数)的水仙花数怎么写??

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 函数+指针:冒泡算法 #include #include void test1(int a[]) { int i,j,p,min,t; int *x,*y ...

  8. c语言转换说明符大全,C语言 认识转换符 fscanf()用法

    http://blog.csdn.net/misskissc/article/details/251373351 原型 int    fscanf(FILE *stream,  const  char ...

  9. c语言单选题大全,C语言单选题(五)

    1.C语言结构体类型变量在程序执行期间(C). A.部分成员驻留在内存中 B.只有一个成员驻留在内存中 C.所有成员一直驻留在内存中 D.没有成员驻留在内存中 2.当定义一个结构体变量时,系统分配给它 ...

  10. c语言笔试题大全,C语言面试题汇总(持续更)

    笔者最近在找工作,因此对应聘C/C++嵌入式开发工程师容易被问到,或者经常搞不清楚的问题做一个汇总,也希望能对找工作的小伙伴起到帮助参考的作用.本篇集中于C语言方面的面试题目. 因为是自己总结的,可能 ...

最新文章

  1. mongoose 使用总结
  2. 阿里云服务器ecs绑定域名,端口的问题,不用80端口
  3. 部署安装kubernetes client-python,执行pip install setup.py时报错
  4. go 项目 cmd目录_Golang 项目布局浅析
  5. Linux free指令查看内存使用情况
  6. c++访问者模式visitor
  7. width用计算机英语,计算机的英语词汇
  8. cifs挂载 mount ubuntu_centos或者Ubuntu挂载windows10文件夹
  9. 实现tomcat的https单向认证及双向认证
  10. 一段代码把网站变成灰白色
  11. solr 使用记录 - solr dataimporter 定时任务
  12. [Swift]LeetCode1023. 驼峰式匹配 | Camelcase Matching
  13. 从化工技术员到微软最有价值专家(MVP)--我的IT从业路
  14. 4月28日上午学习日志
  15. 用IO多路复用,实现每秒百万并发的原理你懂吗?
  16. python编程手机_手机最强Python编程神器,在手机上运行Python
  17. Isight 软件集成AVLCruise软件方法探讨
  18. RTU和DTU的区别是什么?
  19. python解压文件并检查_python脚本简单实现对压缩文件是否加密的检测
  20. 程序员依然是这个时代,贫寒学子翻身的不二选择

热门文章

  1. 聊聊 Tomcat 的单机多实例
  2. Android源码——Logger日志系统
  3. Jsp Layout 布局页
  4. 给一个网址传递参数,并接收返回的参数
  5. PyTorch 模型训练教程(一)-数据
  6. FPGA 按键控制数码管
  7. android studio mac svn插件,Mac下Android Studio升级SVN1.8(使用1.8format来checkout项目)
  8. sql语句ding_在postgresql中结束掉正在执行的SQL语句操作
  9. win10命令行查看显卡驱动版本_Win10更新显卡驱动提示尝试重启GeForce Experience的解决方法...
  10. bootstrap设计登录页面_微服务和VUE(2) 搭建前端登录界面