私は狂っていると思う。それは、その後3 =ループカウンタに一瞬で Cプリプロセッサ#define SQR(x)(x * x)
括弧なしで故意I(x)は(Xの*のX)SQRを定義し、#include <stdio.h>
#define SQR(x) (x * x)
int main()
{
int counter; /* counter for loop */
for(counter = 0; counter < 5; ++counter)
{
printf("x %d, x squared %d\n",counter+1, SQR(counter+1))
}
return (0);
}
をする必要があり、私はCプリプロセッサを学んだし、私はこの問題を把握することはできません
x 1, x squared 1
x 2, x squared 3
x 3, x squared 5
x 4, x squared 7
x 5, x squared 9
Process returned 0 (0x0) execution time : 0.020 s
Press any key to continue.
私は明らかに何かが欠けているが、私はそれを理解することはできません:3 + 1 * 3 + 1とそれが7に等しいですが、出力はここ5 は、上記のコードの出力であると言うことでる。
あなたはそれがあなたの回答は1で一致していないので、追加1でカウンターを印刷している7で正しいです。 – LogicG8
'x 3 'を印刷すると、' counter'は '2'です。 – user2357112
そうですが、プリントはっきり言っています: "x 3、x squared 5" 私は比較+ 1を使ってプリントし、次に+1を計算と比較します。 同じ値 – honeyPot