NOI / 1.12编程基础之函数与过程抽象 01:简单算术表达式求值

这篇博客介绍了一段C语言代码,用于执行两位正整数之间的加、减、乘、除和取余运算。代码首先读取第一个整数,然后通过查找运算符并解析第二个整数来计算结果。最后,根据运算符输出相应的运算结果。这是一个基础的算术运算程序,适用于初学者学习C语言编程。

网上没找见c的,自己写了一个,不止适用2位数

描述

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

+,加法运算;
-,减法运算;
*,乘法运算;
/,整除运算;
%,取余运算。

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

请输出相应的结果。

输入

一行算术表达式。

输出

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

样例输入

32+64

样例输出

96
#include<stdio.h>
#include<math.h>
#include<string.h>
char x[10000];
int main()
{
	int a, b=0,i=0,count=0;
	char c;
	scanf("%d", &a);//第一个数可以直接输入
	gets(x);//第一个数之后就可能有空格,当作字符输入
	
	for (;; i++)
		if (*(x + i) != ' ') { c = *(x + i);  break; }//找运算符,找到后赋值给c
	
	i = strlen(x)-1;//从字符串后面开始算第二个数
	while(*(x+i)!=' '&&x[i]<='9'&&x[i]>='0')//后两个条件主要是防止“a   +b”这样的
	{
		b = b + (*(x + i) - '0') * pow(10, count); i--; count++; //把b算出来
	}

//输出
	if (c == '+')printf("%d", a + b);
	else if (c == '-')printf("%d", a - b);
	else if (c == '*')printf("%d", a * b);
	else if (c == '/')printf("%d", a / b);
	else if (c == '%')printf("%d", a % b);
	return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

pig in shirt

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

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

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

打赏作者

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

抵扣说明:

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

余额充值