求助 神TM六个读出来 ASCII 13(回车)
查看原帖
求助 神TM六个读出来 ASCII 13(回车)
397548
gheescoo楼主2021/3/25 20:24
Wrong Answer. wrong answer On line 1 column 1, read (ASCII 13), expected x.
printf("%c=%.3f",unk,(double)(-c)/(double)(x));

啊这是我整个程序里唯一一个输出了,怎么就读出来回车了呢?
六个测试点全部都是这样的评测记录,用O2,用C用C++都是这样。。。






附整段代码,求解于大神

#include<stdio.h>
#include<stdbool.h>
struct sum{
	bool ms;
	int wt;
}temp;
char unk;
int x,c;	long double ans;
int main()
{
	char get;
	while(get=getchar(),get!='=')
	{
		if('0'<=get&&get<='9')
		  temp.wt=temp.wt*10+get-'0';
		else if(get=='-')
		{
			if(temp.ms){c-=temp.wt;
			}
			  
			else
			  c+=temp.wt;
			temp.ms=true;
			temp.wt=0;
		}
		else if(get=='+')
		{
			if(temp.ms)
			  c-=temp.wt;
			else
			  c+=temp.wt;
			temp.ms=false;
			temp.wt=0;
		}
		else if(get!=' ')
		{
			unk=get;
			if(temp.wt==0) temp.wt=1;
			if(temp.ms)
			  x-=temp.wt;
			else
			  x+=temp.wt;
			temp.wt=0;
		}
	}
	if(temp.ms)
	  c-=temp.wt;
	else
	  c+=temp.wt;
	temp.wt=0;
	while(get=getchar(),get!='\n')
	{
		if('0'<=get&&get<='9')
		  temp.wt=temp.wt*10+get-'0';
		else if(get=='-')
		{
			if(temp.ms)
			  c+=temp.wt;
			else
			  c-=temp.wt;
			temp.ms=true;
			temp.wt=0;
		}
		else if(get=='+')
		{
			if(temp.ms)
			  c+=temp.wt;
			else
			  c-=temp.wt;
			temp.ms=false;
			temp.wt=0;
		}
		else if(get!=' ')
		{
			unk=get;
			if(temp.wt==0) temp.wt=1;
			if(temp.ms)
			  x+=temp.wt;
			else
			  x-=temp.wt;
			temp.wt=0;
		}
	}
	if(temp.ms)
	  c+=temp.wt;
	else
	  c-=temp.wt;
	
	printf("%c=%.3f",unk,(double)(-c)/(double)(x));
	return 0;
}
2021/3/25 20:24
加载中...