C语言无参函数的定义

如果函数不接收用户传递的数据,那么定义时可以不带参数。如下所示:dataType functionName(){

//body

}

dataType 是返回值类型,它可以是C语言中的任意数据类型,例如 int、float、char 等。

functionName 是函数名,它是标识符的一种,命名规则和标识符相同。函数名后面的括号( )不能少。

body 是函数体,它是函数需要执行的代码,是函数的主体部分。即使只有一个语句,函数体也要由{ }包围。

如果有返回值,在函数体中使用 return 语句返回。return 出来的数据的类型要和 dataType 一样。

例如,定义一个函数,计算从 1 加到 100 的结果:#include

int sum(){

int i, sum=0;

for(i=1; i<=100; i++){

sum+=i;

}

return sum;

}

int main(){

int a = sum();

printf("The sum is %d\n", a);

return 0;

}

运行结果:The sum is 5050

函数不能嵌套定义,main 也是一个函数定义,所以要将 sum 放在 main 外面。函数必须先定义后使用,所以 sum 要放在 main 前面。

注意:main 是函数定义,不是函数调用。当可执行文件加载到内存后,系统从 main 函数开始执行,也就是说,系统会调用我们定义的 main 函数。

无返回值函数

有的函数不需要返回值,或者返回值类型不确定(很少见),那么可以用 void 表示,例如:void hello(){

printf ("Hello,world \n");

//没有返回值就不需要 return 语句

}

void是C语言中的一个关键字,表示“空类型”或“无类型”,绝大部分情况下也就意味着没有 return 语句。

C语言有参函数的定义

如果函数需要接收用户传递的数据,那么定义时就要带上参数。如下所示:dataType functionName( dataType1 param1, dataType2 param2 ... ){

//body

}

dataType1 param1, dataType2 param2 ...是参数列表。函数可以只有一个参数,也可以有多个,多个参数之间由,分隔。参数本质上也是变量,定义时要指明类型和名称。与无参函数的定义相比,有参函数的定义仅仅是多了一个参数列表。

数据通过参数传递到函数内部进行处理,处理完成以后再通过返回值告知函数外部。

计算从 m 加到 n 的结果:#include

int sum(int m, int n){

int i, sum=0;

for(i=m; i<=n; i++){

sum+=i;

}

return sum;

}

int main(){

int begin = 5, end = 86;

int result = sum(begin, end);

printf("The sum from %d to %d is %d\n", begin, end, result);

return 0;

}

运行结果:The sum from 5 to 86 is 3731

定义 sum() 时,参数 m、n 的值都是未知的;调用 sum() 时,将 begin、end 的值分别传递给 m、n,这和给变量赋值的过程是一样的,它等价于:m = begin;

n = end;

推荐教程:c语言教程

c语言自定义sum函数,c语言自定义函数相关推荐

  1. 最小值c语言编写自定义函数,C语言笔记55:自定义函数[老九学堂]

    函数定义 return_type function_name ([datetype1 arg1],[datype2 arg2,[...]){ //函数体 } 函数三要素返回值类型 函数名 参数列表 书 ...

  2. C语言:自定义函数中调用自定义函数的方法

    自定义函数中调用自定义函数 在我们编写C语言程序时,可以将要经常用到的或者有自己单独作用的那一部分代码独立成一个函数,不仅可以简化我们的程序,还可以使我们的程序更加可见话. 正文阿巴阿巴 方法一:直接 ...

  3. 【C语言】函数基本知识详细讲解(库函数、自定义函数、参数、函数的套用.....

    接着上次的数组的基本知识,让我们来简单了解C语言里的函数. 目录 函数的定义 库函数 自定义函数 函数的参数 函数的调用: 函数的嵌套调用和链式访问 函数的声明和定义 函数递归. 总结  函数的定义 ...

  4. c语言何编写自定义函数,C语言菜鸟基础教程之自定义函数

    C语言菜鸟基础教程之自定义函数 先动手编写程序: #include int add(int x, int y) { int z = x + y; return z; } int main() { in ...

  5. R语言ggplot2可视化:通过在element_text函数中设置ifelse判断条件自定义标签文本的显示格式:例如、粗体、斜体等

    R语言ggplot2可视化:通过在element_text函数中设置ifelse判断条件自定义标签文本的显示格式:例如.粗体.斜体等 目录

  6. R语言使用treemap包中的treemap函数可视化treemap图:treemap将分层数据显示为一组嵌套矩形、自定义设置treemap图的调色板、自定义设置treemap标题字体的大小

    R语言使用treemap包中的treemap函数可视化treemap图:treemap将分层数据显示为一组嵌套矩形.自定义设置treemap图的调色板.自定义设置treemap标题字体的大小 目录

  7. R语言使用ggpubr包的ggbarplot函数可视化水平偏差条形图(计算数值的z-score、自定义填充色、自定义条形边缘色、自定义调色板、条形图全局排序从小到大、文本标签角度、添加图例标签、轴标签

    R语言使用ggpubr包的ggbarplot函数可视化水平偏差条形图(计算数值的z-score.自定义填充色.自定义条形边缘色.自定义调色板.条形图全局排序从小到大.文本标签角度.添加图例标签.轴标签 ...

  8. R语言用户自定义函数的语法结构、编写自定义统计值计算函数(使用ifelse结构计算均值和标准差等)、编写自定义日期格式化(format)函数(switch函数使用不同分枝格式化日期数据)、应用自定函数

    R语言用户自定义函数的语法结构.编写自定义统计值计算函数(使用ifelse结构计算均值和标准差等).编写自定义日期格式化(format)函数(switch函数使用不同分枝格式化日期数据).应用自定函数 ...

  9. R语言使用ggpubr包的ggdotplot函数可视化水平棒棒糖图(自定义分组数据点色彩、自定义调色板、在两端添加点图的线段segments、整体排序从大到小、自定义数据点的大小、添加数值标签)

    R语言使用ggpubr包的ggdotplot函数可视化水平棒棒糖图(自定义分组数据点色彩.自定义调色板.在两端添加点图的线段segments.整体排序从大到小.自定义数据点的大小.添加数值标签) 目录

  10. R语言使用R原生函数plot和lines可视化线图、并使用lty参数自定义线条类型、lwd自定义设置线条的粗细、col参数自定义线条颜色(Change R base plot line types)

    R语言使用R原生函数plot和lines可视化线图.并使用lty参数自定义线条类型.lwd自定义设置线条的粗细.col参数自定义线条颜色(Change R base plot line types) ...

最新文章

  1. 皮一皮:秀恩爱死的快啊!!!!
  2. 天天向上续python3.3_python3的一些实例(3.1-3.8)
  3. 【C++教程】01.基本概念
  4. 代码查看工具_这样Review代码牛逼啦!
  5. 【BZOJ1857】【SCOI2010】传送带 [三分]
  6. 第三届(2016)科学数据大会——科学数据与创新发展征文通知
  7. ajax---post跨域思路
  8. azure云数据库_配置Azure SQL数据库防火墙
  9. modis数据产品行列号以及数据行列号
  10. STC学习:电子音乐
  11. 如何将exe文件在linux下执行,[操作系统]如何在linux centos 环境下运行.exe文件
  12. 推荐一个商业级saas开源小程序电商java项目
  13. 优维EasyOps®全平台又一波新功能上线,操作体验更带劲
  14. 新手做SEO迷茫时应该做什么
  15. SAP BW/4 HANA基础学习(二)
  16. Win10下Docker使用阿里专属加速器
  17. 云服务器-ubuntu系统
  18. 100天精通Python丨办公效率篇 —— 14、Python这些小技巧,让文件管理更加智能
  19. VS2008 PRO 、WDK 和DDKWizard搭建Vista驱动开发环境
  20. 本地搭建部署gitlab服务并汉化

热门文章

  1. 计算机关机键 自动重启,我的电脑总是关机后自动重启怎么办?
  2. BPM就是IT规划与企业战略的最佳匹配
  3. linux vi编译显示行号,Linux系统vi或者vim编辑器中如何显示行号
  4. 《股票大作手操盘术》读书笔记
  5. 奶爸日记3 - 给鑫鑫做的第一顿饭
  6. 计算机模拟病例考试试题,计算机模拟病例考试的效标—关联效度研究
  7. Windows驱动开发(三)一个WDF入门实例
  8. linux配置cookie认证,Nginx配置修改网页cookie属性
  9. 远程访问及控制工具SSH
  10. 微信微博防劫持短网址生成