洛谷B2130 简单算术表达式求值

简单算术表达式求值

题目描述

两位正整数的简单算术运算(只考虑整数运算),算术运算为:

+,加法运算;

-,减法运算;

*,乘法运算;

/,整除运算;

%,取余运算。

算术表达式的格式为(运算符前后可能有空格):

运算数运算符运算数。

请输出相应的结果。

输入格式

一行算术表达式。

输出格式

整型算数运算的结果(结果值不一定为 2 2 2 位数,可能多于 2 2 2 位或少于 2 2 2 位)。

样例 #1

样例输入 #1

32+64

样例输出 #1

96
#include<stdio.h>
#include<math.h>
#include<stdio.h>
#include<stdbool.h>
#include<string.h>
int main(){
	char str[500],c,op;
	int n,i,j,k,num1=0,num2=0;
	i=0;
	while((c=getchar())!=EOF){
		str[i++]=c;
		if(c=='+'||c=='-'||c=='*'||c=='/'||c=='%'){
			op=c;//找到运算符号 
		}
	}
	str[i]='\0';
	for(j=0;str[j]!=op;j++){
		if(str[j]!=' '){
			num1*=10;
			num1+=(str[j]-'0');
		}
	}//找到第一个数 ,此时j指向运算符 
	for(k=j+1;k<i;k++){
		if(str[k]!=' '){
			num2*=10;
			num2+=(str[k]-'0');
		}
	}//找到第二个数 
	if(op=='+'){
		printf("%d\n",num1+num2);
	}
	else if(op=='-'){
		printf("%d\n",num1-num2);
	}
	else if(op=='*'){
		printf("%d\n",num1*num2);
	}
	else if(op=='/'){
		printf("%d\n",num1/num2);
	}
	else if(op=='%'){
		printf("%d\n",num1%num2);
	}//进行运算 
	return 0;//CSDN:旺旺的碎冰冰~ 
} 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

旺旺的碎冰冰~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值