求助求助P1689
  • 板块学术版
  • 楼主WGXWGXWGX
  • 当前回复6
  • 已保存回复6
  • 发布时间2021/8/28 16:37
  • 上次更新2023/11/4 08:43:08
查看原帖
求助求助P1689
463099
WGXWGXWGX楼主2021/8/28 16:37

请各位大佬帮忙看一下,把scanf改成gets是70分,求助求助!!!```

#include<bits/stdc++.h>
using namespace std;
int a,b,c,a1,b1;
char s[100006];
int main(){
	scanf("%s",s);
	int len=strlen(s); 
	for(int i=0;i<len;i++){
		if(s[i]=='+'||s[i]=='-')
			b=i;
		if(s[i]=='=') 
			c=i;
		if(s[i]=='?')
			a=i;
	}
	if(a<b){ 
		for(int i=b;i<c;i++) {
			if(s[i]>='0'&&s[i]<='9') 
				a1=a1*10+s[i]-'0';
		}
		for(int i=c; i<len; i++) {
			if(s[i]>='0'&&s[i]<='9')
				b1=b1*10+s[i]-'0';
		}
		if(s[b]=='+') 
			cout<<b1-a1<<endl;
		else 
		cout<<a1+b1<<endl;
}
else if(a>b&&a<c) {
		for(int i=0; i<b; i++) {
			if(s[i]>='0'&&s[i]<='9')
				a1=a1*10+s[i]-'0';
		}
		for(int i=c;i<len;i++) {
			if(s[i]>='0'&&s[i]<='9')
				b1=b1*10+s[i]-'0';
		}
		if(s[b]=='+') 
			cout<<b1-a1<<endl;
		else 
			cout<<a1-b1<<endl;
}
else{
		for(int i=0; i<b; i++) {
			if(s[i]>='0'&&s[i]<='9')
				a1=a1*10+s[i]-'0';
		}
		for(int i=b; i<c; i++) {
			if(s[i]>='0'&&s[i]<='9')
				b1=b1*10+s[i]-'0';
		}
		if(s[b]=='+')
		cout<<a1+b1<<endl;
		else 
		cout<<a1-b1<<endl;
	}
	return 0;
} 
2021/8/28 16:37
加载中...