栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

实现计算器的相应功能

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

实现计算器的相应功能

#define _CRT_SECURE_NO_WARNINGS
#include
//方法1 
enum Cal
{
    EXIT,
    ADD,
    SUB,
    MUL,
    DIV
};
int  Add(int x, int y)
{
    return x+y;
}
int Sub(int x, int y)
{
    return x - y;
}
int Mul(int x, int y)
{
    return x * y;
}
int Div(int x, int y)
{
    return x / y;
}

void menu()
{
    printf("*******************************n");
    printf("*****1.Add*********2.Sub*******n");
    printf("*****3.Mul*********4.Div*******n");
    printf("************0.exit**************n");
    printf("*******************************n");
}
void test()
{
    int input = 0;
    int x = 0;
    int y = 0;
    do
    {
        menu();
        printf("请选择:>");
        scanf("%d", &input);
        printf("请输入两个操作数:>");
        scanf("%d%d", &x, &y);
        switch (input)
        {
        case ADD:
            printf("%dn", Add(x, y));
            break;
        case SUB:
            printf("%dn", Sub(x, y));
            break;
        case MUL:
            printf("%dn", Mul(x, y)); 
            break;
        case DIV:
            printf("%dn",Div(x, y));
            break;
        case EXIT:
            printf("退出程序n");
            break;
        default:
            printf("输入错误,请重新输入n");
        }

    } while (input);
}
int main()
{
    test();
    getchar();
}
//方法2 用函数指针数组
void menu()
{
    printf("*******************************n");
    printf("*****1.Add*********2.Sub*******n");
    printf("*****3.Mul*********4.Div*******n");
    printf("************0.exit**************n");
    printf("*******************************n");
}
int  Add(int x, int y)
{
    return x+y;
}
int Sub(int x, int y)
{
    return x - y;
}
int Mul(int x, int y)
{
    return x * y;
}
int Div(int x, int y)
{
    return x / y;
}

int main()
{
    int input = 0;
    int x = 0;
    int y = 0;
    int(*pfArr[5])(int x, int y) = { 0, Add, Sub, Mul, Div };
    do
    {
        menu();
        printf("请选择:>");
        scanf("%d", &input);
        if (input >= 1 && input <= 4)
        {
            printf("请选择两个操作数:>");
            scanf("%d%d", &x, &y);
            int ret = pfArr[input](x, y);
            printf("%dn", ret);
        }
        else if (input == 0)
        {
            printf("退出程序n");
        }
        else
        {
            printf("选择错误,请重新选择n");
        }

    } while (input);
    getchar();
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/528978.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号