关于c基础实现简易计算器的代码(加减乘除)
输入为数字和算术符号组成的字符串,程序会根据运算级处理后输出结果,这是前段时间写的了,没有添加输入字母报错功能,当时我认为计算器上一般也没有字母按键,所以就没有写,但是现在想想计算器和这个代码实现的原理可能又不太一样,如果有借鉴者,自行加上就可以了。
运行时会报一个gets的警告,这个不用管,因为我还没学fgets
calc.c: In function ‘main’:
calc.c:35:2: warning: implicit declaration of function ‘gets’; did you mean ‘fgets’? [-Wimplicit-function-declaration]gets(Input);^~~~fgets
/tmp/ccGSFET8.o:在函数‘main’中:
calc.c:(.text+0x17c): 警告: the `gets' function is dangerous and should not be used.
运行结果如下
9+12*3-10/2+6
46.00
代码如下
#include <stdio.h>
#include <stdlib.h>//atoi
#include <string.h>
float S(float x,float y,char z){float num_temp=0;if(z=='*'){num_temp=x*y;}if(z=='/'){num_temp=x/y;}return num_temp;
}
float SS(float x,float y,char z,char zz){float num_temp2=0;if(zz==' '){return 0;}if(z=='+'){num_temp2=x+y;}if(z=='-'){num_temp2=x-y;}return num_temp2;
}int main(int argc, const char *argv[])
{char Input[100]={0},Inchar[100]={0};float Innum[100]={0},num_1=0,num_2=0;int i=0,j=0;float num_temp1=0;char *p=Input;gets(Input);while(*p!=0){num_2=0;while(*p>='0'&&*p<='9'){num_1=*p-'0';num_2=num_1+num_2*10;p++;}Innum[i]=num_2;Inchar[i]=*p;i++;p++;}for(i=0;i<100;i++){if(Innum[i]==0){break;}num_temp1=S(Innum[i],Innum[i+1],Inchar[i]);if(num_temp1!=0){Innum[i+1]=num_temp1;Inchar[i]=' ';}}for(i=1;i<100;i++){if(Innum[i]==0){break;}num_temp1=SS(Innum[j],Innum[i],Inchar[j],Inchar[i]);if(num_temp1!=0){Innum[i]=num_temp1;j=i;}}printf("%.2f\n",num_temp1);return 0;
}
关于c基础实现简易计算器的代码(加减乘除)相关推荐
- 网页版简易计算器(仅加减乘除)
网页版简易计算器(仅加减乘除) ------------------------------------- 开发工具与关键技术:Visual Studio 2015 C# 作者:林敏静 撰写时间:20 ...
- 十位数连加 c语言,用C语言编写一个简易计算器可实现加减乘除,连加连减,连乖连除....
用C语言编写一个简易计算器可实现加减乘除,连加连减,连乖连除. 用C语言编写一个简易计算器可实现加减乘除,连加连减,连乖连除. 人气:435 ℃时间:2020-04-10 06:55:13 优质解答 ...
- 基于Python中tkinter做的可视化简易计算器(代码有注释,利于理解)
Python可视化简易计算器 基于GUI库:tkinter做的一个简单计算器 开发软件 Pycharm2019.3 代码如下:(有对代码的简单分析,易于理解) import re import tki ...
- java实现简易计算器,实现加减乘除,括号,算式查错,
java实现简易计算器 问题分析 一.计算机界面显示 二. 计算器计算数据处理 三. 部分源代码(该源码未加入算式查错,文件资源正在上传) 三.完整源码,加减乘除,括号,delete,算式查错 问题分 ...
- java控制台实现的简易计算器,实现加减乘除
控制台实现的简易计算器实现加减乘除. package com.javase.method;import java.util.Scanner;/*** @author panglili* @create ...
- java实现简易计算器完整代码
早晨起来没事,打开mac突然想写个小程序,就写来个简易的计算器,可以实现基本的运算,测试目前无bug,下面分享下自己的代码. 首先写了个简单的界面如下: 整个面板用了BorderLayout布局,分为 ...
- Qt简易计算器的代码实现
大二用qt写的简易计算机,已经修改完bug,请放心食用 输入的时候一定用按钮,不要直接在文本框中输入 在qt中新建这几个文件,运行就OK了 main.cpp #include "calcu ...
- iOS 简易计算器 纯代码
把 计算器里的方法 封装一个类 #import <Foundation/Foundation.h> @interface CaculatorBrain : NSObject - (voi ...
- c语言计算器取百分数,简易计算器的代码--------我终于可以编40行以上的代码了...
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 各位继续吧.我也写了点东西,可以看看哈~~ #include #include #define element_number 100 //预定义表达式最 ...
最新文章
- C++为什么空格无法输出_算法竞赛C++常用技巧——输入输出优化(防止TLE)
- 剖析 Laravel 计划任务--事件属性
- redis RedisTemplate实现分布式锁
- 有奖竞赛 | “神策杯”高校算法大师赛揭幕,寻找最强文本处理大神
- Python:file (read,readline,readline )使用方法
- css技能你get到了吗?
- JavaScript笔记(6)
- Perl一行式:处理空白符号
- 华为背锅?微博大V质疑华为P30 Pro拍月亮造假 公司称误导观众已开除
- 别让for循环毁了你的程序(一)
- 谁在让字节跳动?张一鸣领衔14大将,106位高管架构首次曝光
- java爬取html过快,需要输入验证码
- SQL Server数据库查询速度慢的原因
- 批量添加-动态拼接字符串
- Mac环境下安装MongoDB数据库
- C#运控框架 雷赛运动控制 DMC系列 运动控制项目 C#源码
- 网站流量过大服务器不行,网站如何应对突然的大流量访问?
- 如何运行android sdk sample中的单元测试
- Eddy's AC难题
- 2D/3D文档查看器ABViewer发布v12,大大提高PDF转DWG的速度丨附下载