-4
私はこのプログラムを '2 + 6 - 9'(数値と演算子の間にスペースを入れたもの)のような式を計算するようにしましたが、最後のifブロックが正しくありません。 \ nを受け取ったときにどのようにループを解除し、そうでなければ入力を保存することができますか?c式を計算するプログラム
#include <stdio.h>
#include<stdlib.h>
void main()
{
char oper;
int sum,y;
scanf("%d %c",&sum,&oper);
while(1)
{
scanf("%d",&y);
if(oper=='+')
sum += y;
else if(oper=='-')
sum -= y;
else if(oper=='/')
sum /= y;
else if(oper=='*')
sum += y;
if((scanf("%c",&oper))=='\n')
break;
}
printf("\n =%d",sum);
}
で、if(scanf( "%c"、&oper)== 1 && oper == '\ n') 'と等しいかどうかを確認します。 'scanf()'が 'EOF'を返すかどうかを考えてください。 – chux