求助,不知道哪里错了
查看原帖
求助,不知道哪里错了
496009
黄舀啊楼主2021/9/17 19:01
#include<bits/stdc++.h>
using namespace std;
int len(int a)
{
	int sum=0;
	while(a)
	{
		sum++;
		a/=10;
	}
	return sum;
}
int main() 
{
	int n,kb,a,b;string c;
	cin>>n;
	for(int i=1;i<=n;i++)
	{
		cin>>c;
		switch(c[0])
		{
			case 'a':
			cin>>a>>b;
			kb=1;
			printf("%d+%d=%d\n",a,b,a+b);
			cout<<len(a)+len(b)+len(a+b)+2<<endl;
			break;
			case 'b':
			cin>>a>>b;
			kb=2;
			printf("%d-%d=%d\n",a,b,a-b);
			cout<<len(a)+len(b)+len(a-b)+2<<endl;
			break;
			case 'c':
			cin>>a>>b;
			kb=3;
			printf("%d+%d=%d\n",a,b,a*b);
			cout<<len(a)+len(b)+len(a*b)+2<<endl;
			break;
			default:
			cin>>b;
			a=0;
			for(int i=0;i<c.length();++i)
			a=a*10+c[i]-'0';
			if(kb==1)
			{
				printf("%d+%d=%d\n",a,b,a+b);
				cout<<len(a)+len(b)+len(a+b)+2<<endl;
			}
			else if(kb==2)
			{
				printf("%d-%d=%d\n",a,b,a-b);
				cout<<len(a)+len(b)+len(a-b)+2<<endl;
			}
			else
			{
				printf("%d+%d=%d\n",a,b,a*b);
				cout<<len(a)+len(b)+len(a*b)+2<<endl;
			}
			break;
		}
	}
	return 0;
}
2021/9/17 19:01
加载中...