• 欢迎访问C语言网www.dotcpp.com 比赛栏每月有奖月赛!举办比赛联系QQ:2045302297
  • 问题反馈、粉丝交流 QQ群327452739 蓝桥杯训练群:113766799 申请群时请备注排名里的昵称
  • C语言研究中心 为您提供有图、有料、解渴的C语言专题! 欢迎讨论!

C语言实现简单计算器(VC6.0环境)

项目源码 CTO 23841次浏览 2个评论

C语言版简易计算器,包含几个小功能,而且比较精简,适合新手了解整合框架结构

C语言实现简单计算器(VC6.0环境)

源代码如下:

#include <stdio.h> 
#include <math.h> 
#include <stdlib.h> 
//预处理指令
int main(void)
{
        double bNumber, Number, Result;                //给加减乘除定义的变量
        int No;                //选项的定义变量
        double a, b, c, x1, x2, Rad;                //给一元一次方程定义的变量
        int Ary_10;                                        //定义进制的变量
        char string[32];                //二进制变量定义
        system ("title: www.dotcpp.com");
        while(1)
        {
                //界面
                printf ("┏ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┓\n");
                printf ("┇请选择你要计算的方法:                         ┇\n");
                printf ("┣ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┫\n");
                printf ("┇  加法请按_1    进制转换_5                    ┇\n");
                printf ("┇  减法请按_2    求一元二次方程_6              ┇\n");
                printf ("┇  乘法请按_3                                  ┇\n");
                printf ("┇  除法请按_4               退出_0             ┇\n");
                printf ("┗ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┅ ┛\n");
                printf ("Please write down the number:");
                scanf ("%d",&No);
                if (No == 1)
                {
                        //        加法
                        printf ("        请输入被加数:");
                        scanf ("%lf",&bNumber);
                        printf ("        请输入加数:");
                        scanf ("%lf",&Number);
                        Result = bNumber + Number;
                        printf (" 结果是: %lf\n\n",Result);
                }
                else if (No == 2)
                {
                        //        减法
                        printf ("        请输入被减数:");
                        scanf ("%lf",&bNumber);
                        printf ("        请输入减数:");
                        scanf ("%lf",&Number);
                        Result = bNumber - Number;
                        printf (" 结果是: %lf\n\n",Result);
                }
                else if (No == 3)
                {
                        //        乘法
                        printf ("        请输入被乘数:");
                        scanf ("%lf",&bNumber);
                        printf ("        请输入乘数:");
                        scanf ("%lf",&Number);
                        Result = bNumber * Number;
                        printf (" 结果是: %lf\n\n",Result);
                }
                else if (No == 4)
                {
                        //        除法
                        printf ("        请输入被除数:");
                        scanf ("%lf",&bNumber);
                        printf ("        请输入除数:");
                        scanf ("%lf",&Number);
                        Result = bNumber / Number;
                        printf (" 结果是: %lf\n\n",Result);
                }
                else if (No == 5)
                {
                        //进制转换的代码
                        printf("请输入需要转换的十进制数:");
                        scanf("%d", &Ary_10);
                        itoa (Ary_10, string ,2);
                        printf("二进制: %s\n", &string);
                        printf("八进制: %o\n", &Ary_10);
                        printf("十六进制: %x\n", &Ary_10);
                }
                else if (No == 6)
                {
                        //求一元二次方程的解的代码
                        printf("请输入一元一次方程的a,b,c三个数:");
                        scanf("%lf%lf%lf",&a,&b,&c);
                        Rad = b*b - 4*a*c;
                        if (Rad > 0)
                        {
                                x1 = -b + sqrt(Rad) / (2*a);
                                x2 = -b - sqrt(Rad) / (2*a);
                                printf("有两个解 x1 = %lf, x2 = %lf\n", &x1, &x2);
                        }
                        else if (Rad == 0)
                        {
                                x1 = -b / (2*a);
                                printf("只有一个解 x1 = %lf\n", &x1);
                        }
                        else
                        {
                                printf("无解\n");
                        }
                }
                else if (No == 0)
                {
                        //        退出程序
                        break;
                }
                else
                {
                        //        输入的选项不对
                        printf("  请输入正确的数字。\n\n");
                }
                system ("pause");        //按任意键继续
                system ("cls");                //清屏
        }
        return 0;
        getchar();
}

C语言研究中心(www.dotcpp.com)

C语言网提供「C语言、C++、算法竞赛」在线课程,全部由资深研发工程师或ACM金牌大佬亲授课,更科学、全面的课程体系,以在线视频+在线评测的学习模式学习,学练同步,拒绝理论派,真正学会编程!还有奖学金等增值福利等你!

C语言网, 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明C语言实现简单计算器(VC6.0环境)
喜欢 (24)
[jinyangH@aliyun.com]
分享 (0)
发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
(2)个小伙伴在吐槽
  1. 进制转换那里八进制和十六进制不要&,否则将输出地址。
    小熊2017-09-15 12:56 回复
    • 我还以为我学的是错的~~~~~
      xrzcool2017-10-20 08:33 回复