• ベストアンサー

6 line c code です

#include<stdio.h> #define sqr(x) (x)*(x) int main(){ printf("%d\n", 50/sqr(2+3)); } 結果は50になりました xは()の中にあるのでsqr(2+3)は25だとしても 50/25はなぜ50なんでしょうか? 2だと思いましたが 教えてください

質問者が選んだベストアンサー

  • ベストアンサー
  • hashioogi
  • ベストアンサー率25% (102/404)
回答No.1

50/sqr(2+3) =50/(2+3)*(2+3) =50/5*5 =50 結果を2にしたければ、 #define sqr(x) (x)*(x) を #define sqr(x) ((x)*(x)) にする。

関連するQ&A

専門家に質問してみよう