鱼C论坛

 找回密码
 立即注册
查看: 603|回复: 8

[学习笔记] 每日一学7

[复制链接]
发表于 2024-11-30 14:56:06 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 6bingame 于 2024-11-30 14:55 编辑

函数概述


课本例题

函数调用的简单实例

  1. #include<stdio.h>

  2. void printstar()       //定义函数printstar
  3. {
  4.     printf("****************");
  5. }
  6. int sum(int a,int b)    //定义函数sum()
  7. {
  8.     return a+b;         //通过return返回所求结果
  9. }
  10. void main()
  11. {
  12.     int x=2,y=3,z;

  13.     printstar();        //调用函数printstar()

  14.     z=sum(x,y);         //调用函数sum()

  15.     printf("\n%d+%d=%d\n",x,y,z);

  16.     printstar();
  17. }
复制代码




函数的定义

题1:定义求最大值的函数


解:
  1. #include<stdio.h>
  2. int max(int a,int b)    //定义函数max()
  3. {
  4.     int c;

  5.     c=a>b?a:b;      //求a,b两个数的最大值,赋给c

  6.     return c;
  7. }

  8. int main()
  9. {
  10.     int x,y;

  11.     printf("请输入两个整数:");

  12.     scanf("%d%d",&x,&y);

  13.     printf("%d和%d的最大值为:%d\n",x,y,max(x,y));

  14.     return 0;
  15. }
复制代码



函数的返回值及类型

题2:编写cube()函数用于计算x的立方


解:
  1. #include<stdio.h>

  2. long cube(long x)   //定义函数cube(),返回类型为long
  3. {
  4.     long z;

  5.     z=x*x*x;

  6.     return z;       //通过return返回所求结果,结果也应为long
  7. }

  8. int main()
  9. {
  10.     long a,b;

  11.     printf("请输入一个整数:");

  12.     scanf("%d",&a);

  13.     b=cube(a);

  14.     printf("%ld的立方为:%ld",a,b);

  15.     return 0;
  16. }
复制代码



题3:改写题2

解:
  1. #include<stdio.h>

  2. int cube(float x)       //定义函数cube(),返回类型为int
  3. {
  4.     float z;    //定义返回值z,类型为float

  5.     z=x*x*x;

  6.     return z;   //通过return返回所求结果
  7. }

  8. int main()
  9. {
  10.     float a;

  11.     int b;

  12.     printf("请输入一个数:");

  13.     scanf("%f",&a);

  14.     b=cube(a);

  15.     printf("%f的立方为:%d\n",a,b);

  16.     return 0;
  17. }
复制代码



题4:编写printdiamond()函数,用于输出如下图形

                                **********
                                  **********
                                    **********


解:
  1. #include<stdio.h>

  2. void printdiamond()     //定义一个无返回值的函数,返回类型应为void
  3. {
  4.     printf("**********\n");
  5.   
  6.     printf(" **********\n");
  7.   
  8.     printf("  **********\n");
  9. }

  10. int main()
  11. {
  12.     printdiamond();     //调用printdiamond函数

  13.     return 0;
  14. }
复制代码





小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2024-11-30 14:59:05 | 显示全部楼层
在C语言中,函数是结构化编程的重要组成部分。下面是对您提供的代码的简要总结和解释:

函数调用的简单实例

- 使用`void`定义无返回值的函数,如`printstar()`。
- 使用`int`定义有返回值的函数,如`sum()`,通过`return`返回结果。

定义求最大值的函数

- `max(int a, int b)`用于返回两个整数的最大值。使用三目运算符`a > b ? a : b`。

计算立方的函数:cube()函数

题2和题3提到的`cube()`函数分别采用`long`和`int`类型返回值。需要注意返回值类型与结果计算类型的一致性。

打印菱形图案的函数

`printdiamond()`函数用来打印特定格式的图形,使用多个`printf()`函数来实现打印格式。

请注意,所有代码示例中需要包括头文件`#include <stdio.h>`以便使用`printf`和`scanf`等I/O函数。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-11-30 15:11:57 | 显示全部楼层
FishC 发表于 2024-11-30 14:59
在C语言中,函数是结构化编程的重要组成部分。下面是对您提供的代码的简要总结和解释:

函数调用的简单 ...

蟹蟹鱼c的总结解释
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-11-30 15:12:23 | 显示全部楼层
6bingame 发表于 2024-11-30 15:11
蟹蟹鱼c的总结解释


不客气!如果你还有其他问题或者需要进一步的解释,随时可以问哦!:loveliness:

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-11-30 15:17:12 | 显示全部楼层
FishC 发表于 2024-11-30 15:12
不客气!如果你还有其他问题或者需要进一步的解释,随时可以问哦!:loveliness:

以上回复来自 FishC ...

有个问题一直不是很明白,就是函数的返回值意义和作用,return为什么要返回一个值到主函数
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-11-30 15:17:20 | 显示全部楼层
6bingame 发表于 2024-11-30 15:17
有个问题一直不是很明白,就是函数的返回值意义和作用 ...


函数的返回值和`return`语句在编程中非常重要,以下是对它们的简要解释:

1. **函数的返回值意义**:
   - 返回值的主要作用是将函数的计算结果传递给调用它的地方。
   - 函数返回一个值以便其他代码(比如主函数)可以使用这个结果进行后续的计算或判断。

2. **为什么要使用`return`返回一个值**:
   - `return`语句用于结束函数的执行,并指定函数计算完成后返回到调用点的具体值。
   - 对于有返回值的函数,这个返回值可以被调用它的代码使用。例如,可以将这个值赋给变量、用于条件判断或输出到屏幕。

3. **实际应用**:
   - 如果你有一个函数用于加法运算,返回它们的和,那么你可以在其他地方积累这个计算结果,而不是直接或重复计算。
   - 对于一些复杂的计算或逻辑,使用函数来返回结果可以让代码更加简洁和易于维护。

总结:函数的返回值是一种在代码之间传递信息或结果的方式,使程序逻辑更加模块化和清晰。使用`return`很必要,因为它不仅可以把结果返回给调用者,还可以决定函数的出口点。

如果需要更详细的说明或示例,欢迎随时提问哦!:victory:

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2024-11-30 15:20:47 | 显示全部楼层
FishC 发表于 2024-11-30 15:17
函数的返回值和`return`语句在编程中非常重要,以下是对它们的简要解释:

1. **函数的返回值意义** ...

蟹蟹,明白了书本上的解释有点潦草学的时候不太懂,还是鱼c厉害
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-11-30 15:20:58 | 显示全部楼层
6bingame 发表于 2024-11-30 15:20
蟹蟹,明白了书本上的解释有点潦草学的时候不太懂,还 ...


不客气,很高兴能帮到你!学习编程有时候确实会遇到一些难以理解的概念,不过只要多练习、多问问题,就会慢慢掌握的。有任何问题,欢迎随时来问哦,我们一起进步!:handshake:

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-11-30 17:11:56 | 显示全部楼层
不错不错
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-6-7 17:49

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表