C语言实现简单的计算器

本文实例为大家分享了C语言实现简单计算器的具体代码,供大家参考,具体内容如下

描述:简单的实现四则运算

1.switch法

#include<stdio.h>

void menu()//菜单函数
{
 printf("************************************\n");
 printf("***** 1.add       2.sub *****\n");
 printf("***** 3.mul       4.div *****\n");
 printf("***********   0.exit  ***********\n");
 printf("************************************\n");
}

double Add(double x, double y)//加法函数
{
 return x + y;
}

double Sub(double x, double y)//减法函数
{
 return x - y;
}

double Mul(double x, double y)//乘法函数
{
 return x * y;
}

double Div(double x, double y)//除法函数
{
 return x / y;
}

int main()
{
 int input = 0;//运算符
 double x = 0.0;//第一个运算数
 double y = 0.0;//第二个运算数
 do
 {
 menu();
 printf("请选择:>");
 scanf("%d", &input);
 if (input >= 1 && input <= 4)
 {
  printf("请输入两个操作数(用空格分隔):>");
  scanf("%lf%lf", &x, &y);
 }
 switch (input)
 {
 case 1:
  printf("%lf\n", Add(x, y));
  break;
 case 2:
  printf("%lf\n", Sub(x, y));
  break;
 case 3:
  printf("%lf\n", Mul(x, y));
  break;
 case 4:
  printf("%lf\n", Div(x, y));
  break;
 case 0:
  printf("退出\n");
  break;
 default:
  printf("输入错误,请重新输入\n");
  break;
 }
 } while (input);
 return 0;
}

2.函数指针数组法

#include<stdio.h>

void menu()//菜单函数
{
 printf("************************************\n");
 printf("***** 1.add       2.sub *****\n");
 printf("***** 3.mul       4.div *****\n");
 printf("***********   0.exit  ***********\n");
 printf("************************************\n");
}

double Add(double x, double y)//加法函数
{
 return x + y;
}

double Sub(double x, double y)//减法函数
{
 return x - y;
}

double Mul(double x, double y)//乘法函数
{
 return x * y;
}

double Div(double x, double y)//除法函数
{
 return x / y;
}

int main()
{
 int input = 0;//运算符类型
 double x = 0.0;//第一个操作数
 double y = 0.0;//第二个操作数
 double(*p[5])(double, double) = {NULL,Add,Sub,Mul,Div};//把相应的函数指针放入一个数组里
 do
 {
 menu();
 printf("请选择:>");
 scanf("%d", &input);
 if (input >= 1 && input <= 4)
 {
  printf("请输入两个操作数(用空格分隔):>");
  scanf("%lf%lf", &x, &y);
  printf("%lf\n", p[input](x, y));
 }
 else if (0 == input)
  printf("退出\n");
 else
  printf("输入错误,请重新输入\n");
 } while (input);
 return 0;
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

时间: 2021-02-23

C语言实现简单计算器功能(2)

本文接着上一篇C语言实现简单计算器功能(1)继续学习. 之前用switch语句完成了一个简单计算器的功能,下面我给大家用if语句和while循环语句再实现一个简单计算器的编程. 要求: 实现简单的计算器,具体代码如下: #include <stdio.h> // 头文件 void main() { char a = 0; // 变量声明并初始化 int x, y; // 变量声明 int result = 0; char b = 37; while(1) // whiel循环实现反复在计算器系

C语言结课设计之计算器功能

本文实例为大家分享了C语言实现计算器的具体代码,供大家参考,具体内容如下 /*===============================================*\ ** 设计目的:简单计算器,计算形如10*(20.2-30.6)+5.0/2的表达式值 ** 简要原理:中缀式转逆波兰式(后缀式) ** IDE:Dev-Cpp 4.9.9.2 ** 注意事项:括号必须是英文状态的 ** 时间: 2014-6-17 \*==================================

C语言数据结构之简易计算器

本文实例为大家分享了C语言简易计算器的具体代码,供大家参考,具体内容如下 主要解决了处理负数.小数等的基础运算操作,无图形界面 #include <iostream> #include <stack> using namespace std; class Calculator{ private: int Priority(char fuhao); double CalSuffix(string PostfixExp); public: double Calculate(string

C语言实现简单计算器功能(1)

本文为大家分享了C语言实现简单计算器功能的具体方法,供大家参考,具体内容如下 这几天一直上控制语句,在学完if.switch和循环语句后,为了巩固所学知识点,想给学生出一道简单的计算器程序.题目如下: 通过所学的知识(选择语句.循环语句)完成一个简单的计算器编程,要求不许抄袭,只能用自己所学的知识点,不可引用网上自己的不懂的程序. 要求的格式如下图: 要求以这样的一种格式进行输出,并能通过选择完成不同的功能. 如:选择1,完成整数相加功能,算完后又能回到该页面. 经过分析,我简单的写了一段代码,

C语言实现简单计算器程序

这两天在看一个C语言写的计算器程序,做了不少的功夫,跟着作者一步步的进行完善,了解了许多细节性的东西,在此自己做个总结,加深自己对程序的印象,也算是梳理. 在该计算器程序,能进行加减乘除.sin.cos.exp等操作,同时能进行数值保存功能.而该计算器使用逆波兰表示法.即所有运算符都跟在操作数的后面,比如下列表达式: (1 - 2) * (4 + 5)采用逆波兰表示法表示为:1 2 - 4 5 + * 逆波兰表达法中不需要圆括号,只要知道每个运算符需要几个操作数就不会引起歧义. 计算器程序实现很

PHP实现简单计算器小程序

最近刚开始学习一门新的语言 PHP,然后就写了一个计算器的小程序,大体上的思路就是有一个前台程序和一个后台程序,前台程序就是界面类似下图这样的: 然后还有一个后台程序,就是负责计算的,那么根据这个就来设计页面,基本上就是 HTML 的知识,首先添加一个 table,然后添加一个表单,这个表单就提交给当前的页面(当然也可以传给别的页面),剩下的也就没有什么问题了,其实个例子说明 PHP既可以作前台的事情,也可以干后台的事情. Code: <?php /** * Created by PhpStor

go语言简单网络程序实例分析

本文实例分析了go语言简单网络程序.分享给大家供大家参考.具体分析如下: 服务端代码如下: 复制代码 代码如下: package main import (     "net"     "os" ) func serve(s net.Conn) {     var buf [1024]byte     for {         n, err := s.Read(&buf)         if err != nil || n == 0 {         

java 简单的计算器程序实例代码

java 简单的计算器程序 实现实例: import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Calculator { public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { CalculatorFrame frame = new Calculato

c++编写简单的计算器程序

首先来看下本人的开发环境 系统:win7 电脑:dell 运行环境:vs2015 语言:c++ 简单计算器代码 //四则运算 #include "stdafx.h" #include<iostream> #include<stdio.h> using namespace std; void add() { printf("输入要计算的加数(例如a b)\n"); int adda=0, addb=0,addc=0; cin >>

分析C语言一个简单程序

首先给大家一个简单的例子,让读者有个整体的认识,代码如下: #include <stdio.h> int main() { puts("我们"); return 0; } 函数的概念 先来看第4行代码,这行代码会在显示器上输出"我们".前面我们已经讲过,puts 后面要带( ),字符串也要放在( )中. 在C语言中,有的语句使用时不能带括号,有的语句必须带括号.带括号的称为函数(Function) . C语言提供了很多功能,例如输入输出.获得日期时间.文

C语言实现简单三子棋程序

使用C语言实现简单的三子棋程序,主要是对二维数组的运用,我们需要一个头文件,两个源文件来实现. game.h //包含函数的声明,宏定义 test.c //包含主函数,函数调用 game.c //包含函数的定义 整体思路 1.要完成一个简单的三子棋程序,首先需要创建一个二维数组,并完成数组初始化. //使用宏定义定义常量,方便之后对数组的使用 #define ROW 3 //行 #define COL 3 //列 char arr[ROW][COL] = { 0 }; Arr_init(arr,

基于Python编写一个计算器程序,实现简单的加减乘除和取余二元运算

方法一: 结合lambda表达式.函数调用运算符.标准库函数对象.C++11标准新增的标准库function类型,编写一个简单的计算器,可实现简单的加.减.乘.除.取余二元运算.代码如下: #include "pch.h" #include <iostream> #include <functional> #include <map> #include <string> using namespace std; int add(int i