1、第七章第七章1以下程序的运行结果是()。#include#define ADD(x)x+xint main()int m=1,n=2,k=3,sum;sum=ADD(m+n)*k;printf(“%dn”,sum);return 0;A.18B.9C.12D.10D.10以下程序的运行结果是()。#include#define MIN(x,y)(x)(y)?(x):(y)int main()int i=10,j=15,k;k=10*MIN(i,j);printf(“%dn”,k);return 0;A.15B.100C.10C.10D.150以下程序的运行结果是()。#include#defi
2、ne X 5#define Y X+1#define Z Y*X/2int main()int a=Y;printf(“%dn”,Z);printf(“%dn”,-a);return 0;A.7A.75B.125C.7C.76 6D.126以下程序的运行结果是()。#include#define DOUBLE(r)r*rint main()int x=1,y=2,t;t=DOUBLE(x+y);printf(“%dn”,t);return 0;A.7B.6C.5C.5D.8在“文件包含”预处理命令形式中,当#include后面的文件名用”(双引号)括起时,寻找被包含文件的方式是()。A.仅仅搜
3、索源程序所在目录B.直接按系统设定的标准方式搜索目录C.C.先在源程序所在目录中搜索,再按系统设定的标准方式搜索先在源程序所在目录中搜索,再按系统设定的标准方式搜索D.仅仅搜索当前目录若有定义#define N 2#define Y(n)(N+1)*n)则执行语句z=2*(N+Y(5);后,z的值为()。A.无确定值B.语句有错误C.34C.34D.70若有定义#define MOD(x,y)x%y,则执行下面语句后的输出为()。int z,a=15;float b=100;z=MOD(b,a);printf(“%dn”,z+);A.A.有语法错误有语法错误B.11C.10D.6在任何情况下计
4、算平方数都不会引起二义性的宏定义是()A.#define POWER(x)(x)*(x)B.#defineB.#define POWER(x)POWER(x)(x)*(x)(x)*(x)C.#define POWER(x)(x*x)D.#define POWER(x)x*x在宏定义#define PI 3.1415926中,用宏名PI代替一个()。A.双精度数B.常量C.单精度数D.D.字符串字符串以下叙述不正确的是()。A.CA.C程序在执行过程中对预处理命令行进行处理程序在执行过程中对预处理命令行进行处理B.在程序中凡是以开始的语句行都是预处理命令行C.预处理命令行可以出现在C程序中任意一
5、行上D.预处理命令行都必须以开始以下叙述中正确的是()。A.A.宏替换不占用运行时间,只占用编译时间宏替换不占用运行时间,只占用编译时间B.C语言的编译预处理就是对源程序进行初步的语法检查C.在程序的一行上可以出现多个有效的预处理命令行D.使用带参数的宏时,参数的类型应与宏定义时的一致在“文件包含”预处理命令形式中,当include后名的文件名用(尖括号)括起时,寻找被包含文件的方式是()。A.先在源程序所在目录中搜索,再按系统设定的标准方式搜索B.B.直接按系统设定的标准方式搜索目录直接按系统设定的标准方式搜索目录C.仅仅搜索源程序所在目录D.仅仅搜索当前目录以下有关宏替换的叙述不正确的是()。A.A.宏名必须用大写字母表示宏名必须用大写字母表示B.宏名无类型C.宏替换只是字符替换D.宏替换不占用运行时间