t=DOUBLE(x+y);
printf(“%d\\n”,t); }
4、 下面的运行结果是【 】。 #define MUL(z) (z)*(z) main()
{printf(“%d\\n”,MUL(1+2)+3); }
5、 下面程序的运行结果是【】。
#define POWER(x) ((x)*(x)) main()
{ int i=1;
While(i<=4)printf(“%d\\t”,POWER(i++)); printf(“\\n”);}
6、下面程序的运行结果是【 】。 #define EXCH(a,b) {int t;t=a;a=b; b=t;} main()
{int x=5,Y=9;
EXCH(x,y);
printf(“x=%d,y=%d\\n”,x,y);} 7、下面程序的运行结果是【 】。
#define MAX(a,b,c) ((a)>(b)? ((a)>(c)? (a):(c) ):((b)>(C)?(b):(c))) main()
{int x,y,z}
x =l; y=2; z =3; printf(“%d,”,MAX(x,y,z)); printf(%d,”,MAX(x十y,y, y+ x)), printf(%d\n”,MAX(x,y+z,z));
8、下面程序的运行结果是【 】。 #define SELECT(a,b)a
{int m=2 ,n= 4;
printf(“%d\n”,SELECT(m,n));} 三、 编程题
1、 输入一行字母字符,根据需要设置条件编译,使之能使将字母全改为大写输出,或全改为小写字母输出。
参考答案 一、 选择题 题号 1 2 3 4 5 6 7 8 9 答案 B C C C B B D B D 题号 10 11 12 13 14 15 16 17 18 答案 D D B B C D A C B 题号 19 20 21 22 23 24 25 26 27 答案 DD B B D B C B C D 二、填空题: 1、880 2、2400 3、5 4、12 5、2 12 6、x=8,y=5 7、3,3,5 8、2 三、编程题
#define LETTER 1 main()
{char str[20]=”C Language”,c; int i; i=0;
while((c=str[i])!=’\\0’) {i++;
# if LETTER
if(c>=’a’&&c<=’z’) c=c-32; # else
if(c>=’A’&&c<=’Z’) c=c+32; #endif
printf(“%c”,c);}}