6bingame 发表于 2024-11-30 14:56:06

每日一学7

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

函数概述

课本例题

函数调用的简单实例

#include<stdio.h>

void printstar()       //定义函数printstar
{
    printf("****************");
}
int sum(int a,int b)    //定义函数sum()
{
    return a+b;         //通过return返回所求结果
}
void main()
{
    int x=2,y=3,z;

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

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

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

    printstar();
}



函数的定义

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

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

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

    return c;
}

int main()
{
    int x,y;

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

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

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

    return 0;
}


函数的返回值及类型

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

解:
#include<stdio.h>

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

    z=x*x*x;

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

int main()
{
    long a,b;

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

    scanf("%d",&a);

    b=cube(a);

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

    return 0;
}



题3:改写题2

解:
#include<stdio.h>

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

    z=x*x*x;

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

int main()
{
    float a;

    int b;

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

    scanf("%f",&a);

    b=cube(a);

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

    return 0;
}



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

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

解:
#include<stdio.h>

void printdiamond()   //定义一个无返回值的函数,返回类型应为void
{
    printf("**********\n");

    printf(" **********\n");

    printf("**********\n");
}

int main()
{
    printdiamond();   //调用printdiamond函数

    return 0;
}





FishC 发表于 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 小助理,如未能正确解答您的问题,请继续追问。

6bingame 发表于 2024-11-30 15:11:57

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

函数调用的简单 ...

蟹蟹鱼c的总结解释{:5_106:}

FishC 发表于 2024-11-30 15:12:23

6bingame 发表于 2024-11-30 15:11
蟹蟹鱼c的总结解释{:5_106:}

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

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。

6bingame 发表于 2024-11-30 15:17:12

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

以上回复来自 FishC ...

有个问题一直不是很明白,就是函数的返回值意义和作用,return为什么要返回一个值到主函数

FishC 发表于 2024-11-30 15:17:20

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

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

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

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

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

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

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

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。

6bingame 发表于 2024-11-30 15:20:47

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

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

蟹蟹,明白了书本上的解释有点潦草学的时候不太懂,还是鱼c厉害{:5_101:}

FishC 发表于 2024-11-30 15:20:58

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

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

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。

小甲鱼的二师兄 发表于 2024-11-30 17:11:56

{:10_254:} 不错不错
页: [1]
查看完整版本: 每日一学7