怎样编写一个程序来实现以下功能

写一个多功能程序,用多函数进行设计,需实现如下功能:
(1)计算3个数的平均值;
(2)输出九九乘法表;
(3)求两个正整数的最大公约数;
(4)计算Fibonacci数列的第40个数;
(5)找一组整数的中位数。

整合代码如下:

#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
//求平均数
void average()
{
    double a, b, c;
    printf("请输入3个数,以空格隔开:");
    scanf("%lf %lf %lf", &a, &b, &c);
    printf("平均值=%g\n", (a + b + c) / 3);
}
//乘法表
void cfb()
{
    int i = 1, j = 1;
    for (i = 1; i <= 9; i++)
    {
        for (j = 1; j <= i; j++)
            printf("%d*%d=%-4d", i, j, (i * j));
        printf("\n");
    }
}

//最大公约数
void gys()
{
    int a, b, i;
    printf("请输入2个整数,以空格隔开:");
    scanf("%d %d", &a, &b);
    if (a > b)
        i = b;
    else
        i = a;
    for (; i >= 1; i--)
    {
        if (a % i == 0 && b % i == 0)
            break;
    }
    printf("%d和%d的最大公约数是%d\n", a, b, i);
}

//Fibonacci
void Fib()
{
    int a[50];
    int i;
    a[1] = 1;
    a[2] = 1;
    for (i = 3; i <= 40; i++)
    {
        a[i] = a[i - 1] + a[i - 2];
    }
    printf("Fibonacci的第40个数是%d\n", a[40]); //a[0]没有,从a[1]开始,所有第40个数就是a[40]
}

//中位数
void midNmb()
{
    int a[50];
    int i = 0, j, n = 0, t;
    printf("请输入数组元素个数:");
    scanf("%d", &n);
    printf("请输入%d个数:\n", n);
    for (i = 0; i < n; i++)
        scanf("%d", &a[i]);
    //排序
    for (i = 0; i < n - 1; i++)
    {
        for (j = 0; j < n - 1 - i; j++)
        {
            if (a[j] > a[j + 1]) //从小到大排序
            {
                t = a[j];
                a[j] = a[j + 1];
                a[j + 1] = t;
            }
        }
    }
    if (n % 2 == 1)
        printf("中位数是%d", a[n / 2]); //奇数个时,中位数是中间的值
    else
        printf("中位数是%.2f", (a[n / 2] + a[n / 2 - 1]) / 2.0); //数组元素偶数个时,中位数是中间两个数的平均值,保留2位小数
    printf("\n");
}


int main()
{
    int op;
    while (1)
    {
        printf("1.求3个数的平均数\n");
        printf("2.输出九九乘法表\n");
        printf("3.求公约数\n");
        printf("4.求序数的第40个数\n");
        printf("5.求中位数\n");
        printf("0.退出\n");
        scanf("%d", &op);
        switch (op)
        {
        case 0:return 0;
        case 1:average(); break;
        case 2:cfb(); break;
        case 3:gys(); break;
        case 4:Fib(); break;
        case 5:midNmb(); break;
        }
    }
}

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632