有以下程序#include "stdio.h"#define M(x,y) (x)*(y) #define N(x,y) (x)/(y) main(){ int
有以下程序#include "stdio.h"#define M(x,y) (x)*(y) #define N(x,y) (x)/(y) main(){ int a=5,b=6,c=8,k; k=N(M(a,b),c); printf("%d\n",k);} 程序的運行結果是A.3 B.5C.6 D.8
正確答案:A帶參數的宏定義的一般形式為#define 宏名(參數表)字符串。題目中定義了兩個宏“#define M(x,y) (x)*(y)”、“#define N(x,y) (x)/(y)”,即可以用M(x,y) 表示(x)*(y)運算,N(x,y)表示(x)/(y)運算。主函數main中關鍵是計算k=N(M(a,b),c),根據前述的宏,有k=a*b/c,計算后有k=30/8,取整后得到3。
詞條內容僅供參考,如果您需要解決具體問題
(尤其在法律、醫(yī)學等領域),建議您咨詢相關領域專業(yè)人士。