小火山的計算能力

Description
別人說小火山的計算能力不行,小火山很生氣,於是他想證明自己,現在有一個表達式,他想計算出來。

Input
首先是一個t(1<=20)表示測試組數。然後一個表達式,表達式長度不超過200,只有加法和減法,並且保證第一個字符不會是運算符號,最終結果小於2^63-1。

Output
輸出運算結果。

Sample Input
2
1+1
2+1-1
Sample Output
2
2

HINT

思路 : 多校聯盟的簽到題,剛開始忘了有可能輸入多位數字~WA了幾次=。=

#include<cstdio>
#include<cstring>
#include<cmath>
using namespace std;
int main()
{
	char a[210];
	int n,i,b,k;
	long long sum,c;
	scanf("%d",&n);
	while(n--)
	{
		scanf("%s",a);
		b=strlen(a);
		sum=0;
		c=0;
		k=0;
		for(i=0;i<b;i++)
		{
			
			if(a[i]!='+'&&a[i]!='-')
			{
				c=c*10;
				c=c+a[i]-48;
			}
			if(a[i]=='+'||a[i]=='-'||i==(b-1))
			{
				if(k==0)
				{
				sum=sum+c;
				}
				else
				{
				sum=sum-c;
				k=0;	
				}
				c=0;
				if(a[i]=='-')
				k++;
			}
		}
		printf("%lld\n",sum);	
	}
	return 0;
}


發佈了133 篇原創文章 · 獲贊 2 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章