你这个样例好像也没过啊
```c
if(l=='+')
printf("%d+%d=%d\n",temp[0],temp[1],temp[0]+temp[1]);
if(l=='-')
printf("%d-%d=%d\n",temp[0],temp[1],temp[0]-temp[1]);
if(l=='*')
printf("%d*%d=%d\n",temp[0],temp[1],temp[0]*temp[1]);
```
这里你判断l是否等于```+ - *```但是你在这之前l只可能等于```a b c```啊。
而且感觉代码逻辑也有问题:假设你已经修复了上述问题,使用数据
```
4
a 64 46
275 125
c 11 99
b 46 64
```
的时候处理完第三行数据之后l是'c',scanf下一个读到的是第三行末尾的'\r'或者'\n',然后又进defaute了,那d根本就拿不到。
如果这些问题都修复了,还是有一点小问题:
这组数据其实不是```4\na 64 46\n275 125\nc 11 99\nb 46 64```,而是```4\r\na 64 46\r\n275 125\r\nc 11 99\r\nb 46 64```,具体可以看<https://www.luogu.com.cn/discuss/735482>
by milk2715093695 @ 2023-11-22 23:02:52