C语言笔记之函数1

1. 函数是什么?

函数是一块代码,一组一起执行一个任务的语句。函数接受零个或多个参数,计算完成返回零个或一个值。
函数的作用:重复使用代码

2. 函数怎么用?

2.1 调用函数

在数学中有很多的函数,可以直接在C语言中使用,例如:sin()cos()。这些函数的使用方法与数学使用方法是一致的。使用函数通常称为调用函数。函数调用语法如下:
函数名(参数值);
说明:调用函数要按照函数定义,按照顺序给出正确数量、正确类型的参数。
传递给函数的参数值是表达式的结果,这包含:字面量、变量、函数的返回值、计算结果。

  • 说明
    printf()一样,sin()cos()都是C语言使用标准库定义的函数,这类函数称为标准函数。使用标准函数通常要添加标准函数所在的头文件。常用的函数还有sqrt()pow()fabs()等。

注意使用sin()cos()sqrt()pow()fabs()等数学函数在代码中,需要加入头文件math.h;在编译时加上链接库-lm

2.2 定义函数

除了使用标准库定义的函数,我们也可自己定义函数,称为自定义函数。定义格式如下:

返回类型 函数名(参数列表){
    语句1;
    语句2;
    语句3;
    …………;
}

2.3 函数细节

2.3.1 函数的构成

  • 函数头
    返回类型
    函数名
    参数列表
  • 函数体
    根据有无参数列表,函数分为:无参函数和有参函数。
    根据有无返回类型,函数分为:无返回值函数和有返回值函数。

2.3.2 从函数中返回值

  • return语句
    return表示停止函数执行
return;

return可以在停止函数执行同时返回一个值。

return 表达式;

在一个函数中可以有多个return语句。

  • 返回值
    返回值可以传递给变量。
    返回值可以传递给函数。
    返回值可以丢弃。

2.3.3 没有返回值的函数

  • 语法
void 函数(参数列表)
  • 特点
    不能使用带值的return
    可以没有return
    调用时没有返回值

2.3.3 其他说明

  • main()是一个特殊的自定义函数。
  • 定义函数不会执行函数体代码,只有调用函数时,才是真正执行。
  • 函数名也是标识符,也要遵守与变量一样的命名规则。
  • 函数没有参数时,参数列表可以为空,也写入关键字void表示为空。
    函数没有返回值时,返回类型必须写void

3.小项目:BMI体重测评器

  • 原理
    身体质量指数BMI(Body Mass Index)是一个量度人是否肥胖参考值。是世界公认的一种评定肥胖程度的分级方法。
  • BMI计算公式
    在这里插入图片描述
  • BMI判断标准(成人的BMI)
No. 级别 BMI值
1 过轻 18.5<
2 正常 18.5~23.9
3 超重 24~27
4 肥胖 28~32
5 非常肥胖 >32
  • 功能

    1.分别提示输入体重和身高
    2.计算BMI
    3.根据BMI输出体重级别
    4.如果不在正常范围内输出需要增肥/减肥的最小值。

#include <stdio.h>
#include<math.h>
#define PI 3.14
float BMI(float tz,float sg)
{   
    return tz/(sg*sg);
    
}
void BMIGRADE(float a,float b)
{   
    float bmi=BMI(a,b);
    printf("你的BMI值为:%.2f\n",bmi);
    printf("你的BMI体重级别属于");
    if(bmi < 18.5)
    {
        printf("过轻\n");
        
    }
    else if(bmi>=18.5&&bmi<=23.9)
    {
        printf("正常\n");
        
    }
    else if(bmi>=24&&bmi<=27.9)
    {
        printf("超重\n");
    }
    else if(bmi>=28&&bmi<32)
    {
        printf("肥胖\n");
    }
    else if(bmi>32)
    {
        printf("非常肥胖\n");
    }
    if(bmi<18.5)
    {
        printf("你的体重太轻了距离正常体重至少增肥%.2fKG\n",18.5*b*b-a);
    }
    if(bmi>23.9)
    {
        printf("你的体重超重了距离正常体重至少减肥%.2fKG\n",a-23.9*b*b);
    }
}
int main() {
    float tz,sg;
    float yourbmi;
   // printf("请输入你的体重(KG)和身高(m):");
    scanf("%f%f",&tz,&sg);
    BMIGRADE(tz,sg);
	return 0;
}
发布了39 篇原创文章 · 获赞 4 · 访问量 702

猜你喜欢

转载自blog.csdn.net/weixin_44718794/article/details/103793386