求助大佬,为什么输入n的时候n也会进入循环并且输出值?
查看原帖
求助大佬,为什么输入n的时候n也会进入循环并且输出值?
856421
zkmyyy楼主2022/12/16 07:36

WA代码

#include<bits/stdc++.h>
using namespace std;
int main()
{
	int n,a,b,c;
	char s[100],ans[100],last;
	scanf("%d",&n);
	while(n--)
	{
		fgets(s,sizeof(s),stdin);
		if(s[0]=='a'||s[0]=='b'||s[0]=='c')
		{
			last=s[0],s[0]=' ';
		}
		sscanf(s,"%d%d",&a,&b);
		switch(last)
		{
			case'a':c=a+b;sprintf(ans,"%d+%d=%d",a,b,c);break;
			case'b':c=a-b;sprintf(ans,"%d-%d=%d",a,b,c);break;
			case'c':c=a*b;sprintf(ans,"%d*%d=%d",a,b,c);break;
		}
		printf("%s\n%d\n",ans,strlen(ans));
	}
}

本蒟蒻瞎改之后AC了但是并不知道为什么这样改。

cin>>n;
	n=n+1;
	while(n--)
if(strlen(ans)!=0)
		{
			printf("%s\n%d\n",ans,strlen(ans));
		}

求助大佬!求助大佬!求助大佬!

2022/12/16 07:36
加载中...