我以为我理解 C,但我很难写一个简单的加法代码来练习。当我运行这段代码时,int a 每次都是 0。但是, int b 工作正常。这里的想法是程序的输入是8 + 9。为什么sscanf不能识别变量a?
#include <stdio.h>
#include <stdlib.h>
int plus(int a, int b){
return (a + b);
}
int main()
{
int a, b;
char input[100], op;
printf("...I am ZOLO...\n");
printf("...The most vercatile calculator known to man...\n");
printf("...Please enter your query:");
fgets(input, sizeof(input), stdin);
sscanf(input, "%d %s %d", &a, &op, &b);
printf("%d + %d = %d...", a, b, plus(a, b));
return 0;
}