用的是题解的%c判断字符的方法,但是做了几个小时都过不去,请教一下各位。
查看原帖
用的是题解的%c判断字符的方法,但是做了几个小时都过不去,请教一下各位。
968096
Z_achary楼主2023/12/13 23:19
#include <iostream>
using namespace std;
int main()
{
	int num = 0;//该次循环读到的数字
	int tmp = 0;//暂存
	int a = 0;//存放第一次读取的数
	int sum = 0;
	char c = 0;
	char c_tmp = c;//存最后一次的运算符
	int flag = 1;
	scanf("%d", &a);
	a %= 10000;
	while (scanf("%c", &c) == 1)
	{
		if (c != '+' && c != '*')
			break;
		c_tmp = c;
		scanf("%d", &num);
		num %= 10000;
		if (c == '+')
		{
			if (flag)
			{
				sum += a % 10000;
			}
			sum += tmp % 10000;
			tmp = num % 10000;
		}
		else if (c == '*')
		{
			if (flag)
			{
				tmp = 1;
				tmp = num * a % 10000;
			}
			else
				tmp  *= num % 10000;
		}
		flag = 0;
	}
	if (flag)
	{
		cout << a % 10000;
		return 0;
	}
	if (c_tmp == '+')
		sum += num % 10000;
	else if (c_tmp == '*')
		sum += tmp % 10000;
	cout << sum % 10000;
	return 0;
}
2023/12/13 23:19
加载中...