宏定义平方运算#define SQR(X)X*X是否正确执行平方运算的宏定义不正确,会造成错误。下面以如下程序代码为例进行分析。
#define SQR(x)x*xmain(()int a,k=3 ; a=++SQR(K+1); printf("%d/n" ,(分数: 2.00 )A.;A) 8B.9 √C.17D.20x 以实参 k+1代替,其他字符不变。 SQR(k+1)展开后应为字符串 k+1*k+1 相关知识点: 试题来源: 解析 B 宏替换:`SQR(k+1)`展开为`k+1*k+1`,即运算式为`k+(1*...
#define SQR(X) X * X main() int a=16,k=2,m=1; a/=SQR(k/m)/SQR(k+m); printf("%d\n", A.; A) 16B.2C.9D.1 2下列程序的输出结果是___。 #define SQR(X) X*X main ( ) { int a=16, k=2, m=1; a/=SQR (k+m)/SQR (k+m); printf ("d\n", a); } A.16B...
不要忘了sqr中的x不是一个变量,编译器仅仅是把x替换为10+2,因此sqr(10+2)的结果是10+2*10+2,当然是32咯。为了避免这种情况,这样写就没问题了: #define sqr(x) ( (x) * (x) )本文出自 51CTO.COM技术博客
#define MIN(x,y) ( ((x) < (y)) ? (x) : (y)) 面试题2:下面代码的执行结果是 #include <stdio.h> #define SQR(x) (x*x) int main() { int a = 0; int b = 3; a = SQR(b+2); printf("a = %d\n",a); return 0; }...
以下程序的输出结果是 ___。#include<stdio.h>#define SQR(x)x*xmain(() int a,k=3; a=++SQR(K+1)
宏定义 SQR(X) 被展开为 X*X。程序中计算 a /= SQR(k+m)/SQR(k+m) 时,替换后表达式为 a /= (k+m*k+m)/(k+m*k+m)。代入 k=2 和 m=1,计算: `k+m*k+m = 2+1*2+1 = 2+2+1=5`, 故分母为 5/(5)=1。a=16/1=16,输出结果为选项A。 其他选项B和D的计算结果无法通过...
#define SQR(x) (x*x) 值的探究 技术标签: C++#include <iostream> #include <iomanip> #define SQR(x) x*x int main() { int a = 10, k = 5, m = 3; int b = SQR(k + m); a += SQR(k + m); std::cout << a << std::endl; system("pause"); return 0; } 上面这段...
#define SQR(x) x*x int m=1,k=2; a=SQR(k+m)/SQR(k+m); a=k+m*k+m/k+m*k+m; a=2+1×2+1/2+1×2+1=7.5 #define SQR(x) (x)*(x) int m=1,k=2; a=SQR(k+m)/SQR(k+m); a=(k+m)*(k+m)/(k+m)*(k+m); ...
Oct 31st, 2007 ANS:a=25;SQR(x) (X*X)x=b+2=3+2=5; X=5;SQR(x)=SQR(5)=SQR(5*5)=25; Was this answer useful? Yes Replysjulian Feb 20th, 2008 I go with vinayaka. Was this answer useful? Yes Replymouthika Feb 21st, 2008 3+2*3+2=3+6+2(since * has highe...