#include <cstdio>
#include <cstring>
int main(){
int n, a, b, c;
char last, s[20], ans[20];
scanf("%d\n", &n);
printf("\n");
while(n--){
fgets(s, sizeof(s), stdin);
if(s[0] == 'a' ^ s[0] == 'b' ^ s[0] == 'c'){
last = s[0], s[0] = ' ';
}
printf("%s", s);
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));
}
return 0;
}
这一段是深基上的代码,请问第11行中,为什么在判断符号后要把s[0]转换成空格,如下
last = s[0], s[0] = ' ';