这道题我认为他的测试用例是有问题的,测试用例中既有字符0结尾,又有\0结尾,与题中描述不一致,所以在while()循环中采用了&&的与逻辑判断形式。
确实是有点坑人哦。
下面就是我写的代码
#include<stdio.h>
int main()
{
int count_a = 0;
int count_b = 0;
char a = '0';
while ((a = getchar()) !='0' && a!='\n')
{
if ('A' == a)
count_a++;
else
count_b++;
}
if (count_a > count_b)
printf("A\n");
else if (count_a == count_b)
printf("E\n");
else
printf("B\n");
return 0;
}
以下就是我的证明
1,当我以\n为结束时,部分测试用例以字符0结尾(注意,题目要求是以字符0结尾)但是请看后面
2,当我以字符0结尾时,又有部分测试用例以\n结尾,这与题的描述不一致
看图题的输入描述
于是我又改为以字符0结尾看图
于是乎最后我用&&进行判断,最后就完美通过了。
如有不对,请指正,毕竟我也是初学c语言,感谢观看,谢谢啦。