怎么用一个函数调用七八个完全不同的函数?

写了七八个不一样的函数,比如判断闰年、求数组最大值、找最大公约数等等,怎么将这些全部调用起来,组成一个函数?

一种方法是通过参数传递的方式实现。您可以定义一个主函数,并在其中通过判断参数的不同来调用不同的函数。例如:

#include<stdio.h>

void leap_year(void)
{
    // 判断闰年的代码
}

void max_value(void)
{
    // 求数组最大值的代码
}

void gcd(void)
{
    // 求最大公约数的代码
}

void main_function(int n)
{
    switch(n)
    {
        case 1: leap_year(); break;
        case 2: max_value(); break;
        case 3: gcd(); break;
        default: printf("Invalid option");
    }
}

int main(void)
{
    int n;
    printf("Enter a number (1-3): ");
    scanf("%d", &n);
    main_function(n);
    return 0;
}


您可以在主函数 main_function 中通过 switch 语句的判断来决定调用哪个函数。然后在 main 函数中读入用户的选择并调用 main_function 函数即可。

使用指针,指针指向想要返回的值,将原来的函数体全部复制过来,计算的结果赋值给指针