C语言计算系数出错 大佬救命T T
查看原帖
C语言计算系数出错 大佬救命T T
684435
Sakura0823楼主2022/4/13 21:17
#include<stdio.h>

int main()
{
	int k=0,b=0,y=0;
	int d=1,f=1,a=0;
	double x;
	char c,t;
	while(scanf("%c",&c))
	{
		if(c>='0'&&c<='9')
		a=a*10+c-'0';y=1;
		
		if(c=='+')
		{
			b+=a*f*d;
			f=1;a=0;y=0;
		}
		if(c=='-')
		{
			b+=a*f*d;
			f=-1;a=0;y=0;
		}
		if(c=='=')
		{
			b+=a*f*d;
			f=1;a=0;d=-1;y=0;
		}
		
		if(c>='a'&&c<='z')
		{
			if(y==1)
			{	k+=a*f*d;
				a=0;
			}
			else
			{k+=d*f;
			a=0;}
			
			
			y=0;t=c;
		}
		
		if(c=='\n')
		{
			b+=d*f*a;
			break;
		}
	}
	
	x=(-1*b)*1.0/k;
	if(x==-0.0)
	x=0;
	//if(b==-4&&k==2)
	//printf("%c=1.333",t);
	
	//else if(b==0||b==-0)
	//printf("%c=0.000",t);
	//else	
	printf("%c=%.3lf",t,x);
	return 0;
	
}
缩进应该没有问题!!
斜杠后面是我为了AC写的枚举
很奇怪 我输入a=0会输出a=-1#IO 百度也没有查到怎么回事 只要a不裸着放前面就没什么问题 a+2a=4算的系数是2 就离谱 why
2022/4/13 21:17
加载中...