c语言-第九章----预处理

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第九章预处理A部分(本、专科必做)一、选择题以下不正确的叙述是(D)A、宏替换不占用运行时间。B、宏名无类型。C、宏替换只是字符替换。D、宏名必须用大写字母表示。C语言的编译系统对宏命令的处理(D)A、在程序运行时进行的。B、在程序连接时进行。C、和C程序中的其它语句同时进行编译的。D、在对源程序中其它语句正式编译之前进行的。3、以下程序的输出结果是(C)。A、15B、100C、10D、150#defineMIN(x,y)(x)(y)?(x):(y)voidmain(){intI,j,k;i=10;j=15;k=10*MIN(i,j);printf(“%d\n”,k);}4、以下叙述中正确的是(D)用#include包含的文件的后缀必须是“.h”。若一些源程序中包含某个头文件;当该文件有错时,只需对该头文件进行修改,包含此头文件的所有源程序不必重新进行编译。宏命令行可以看作是一行C语句。预处理是在编译之前进行的。5、以下叙述中正确的是(C)A、源程序中所有的行都参加编译。B、宏定义常量与const定义常量是一样的。C、宏定义可以嵌套定义,即在宏定义中的字符串可以引用另一个宏定义的标识符。D、以上都不正确。二、填空题以下程序中for循环执行的次数是6。#defineN2#defineMN+1#defineNUM(M+1)*M/2voidmain(){inti;for(i=1;i=NUM;i++);printf(“%d\n”,i);}2、以下程序的输出结果是x=93。#defineA3#defineB(a)((A+1)*a)voidmain(){intx;x=3*(A+B(7));printf(“x=%d\n”,x);}B部分(本科必做)编程:请写出一个宏定义MYALPHA(c),用以判断c是否是字母字符,若是,得1,否则,得0。解:#defineMYALPHA(c)((c=’A’&&c=’Z’)||(c=’a’&&c=’z’)?1:0)

1 / 2
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功