【数据结构练习】简单四则运算

这是一个C++实现的程序,用于计算只包含个位数字的简单四则运算表达式字符串的结果。程序遵循四则运算规则,处理乘除优先于加减,并使用整数除法。函数`calculate`接收表达式长度和字符串,返回计算结果。通过测试用例验证了其正确性。
摘要由CSDN通过智能技术生成
// SimpleFourArithmeticOperation.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"
#include "stdlib.h"
#include "stdio.h"
#include "string.h"
#define Max 100
/*问题描述:
	输入一个只包含个位数字的简单四则运算表达式字符串,计算该表达式的值 
	注:1、表达式只含 +, -, *, / 四则运算符,不含括号 ;
		 2、表达式数值只包含个位整数(0-9),且不会出现0作为除数的情况 ;
		 3、要考虑加减乘除按通常四则运算规定的计算优先级;
		 4、除法用整数除法,即仅保留除法运算结果的整数部分;
	比如8/3=2。输入表达式保证无0作为除数情况发生; 
		 5、输入字符串一定是符合题意合法的表达式,其中只包括数字字符和四则运算符字符,
	除此之外不含其它任何字符,不会出现计算溢出情况;
函数要求:
	int calculate(int len,char *expStr)
*/
/*思路描述问题:
	先计算乘除问题,在计算加减问题;
*/
//理解为什么操作符和数字要分开进行处理。
int calculate(int len,char *expStr){
	if(expStr == NULL || len <= 0)
		return 0;

	int num[Max];
	int numlength = 0;

	char opera[Max];
	int operalength = 0;

	num[0] = *expStr - '0';
	numlength = 1;
	
	//结果
	int sum = 0;
	//保存在栈里面的只有数据和+-操作符号
	for (int i = 1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值