Word版可编辑-C语言程序设计第八章预处理命令精心整理.docx_第1页
Word版可编辑-C语言程序设计第八章预处理命令精心整理.docx_第2页
Word版可编辑-C语言程序设计第八章预处理命令精心整理.docx_第3页
Word版可编辑-C语言程序设计第八章预处理命令精心整理.docx_第4页
Word版可编辑-C语言程序设计第八章预处理命令精心整理.docx_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

一、选择题1、对宏命令的处理是_ _A、在程序执行时进行的 B、在对程序中其他语句进行编译前进行的C、在程序连接时进行的 D、与程序中其他语句同时进行编译2、下面对编译预处理的叙述正确的是_ _A、预处理命令只能位于程序的开始处B、预处理功能是指完成宏替换和文件包含的调用C、只要行首以“#”标识的控制行都是预处理命令D、编译预处理就是对源程序进行初步的语法检查3、以下叙述中不正确的是( )。A)预处理命令行都必须以#号开始B)在程序中凡是以#号开始的语句行都是预处理命令行C)C程序在执行过程中对预处理命令行进行处理D)以下是正确的宏定义 #define IBM-PC4、以下叙述中正确的是( )。A)在程序的一行上可以出项多个有效的预处理命令行B)使用带参的宏时,参数的类型应与宏定义时的一致C)宏替换不占用运行时间,只占编译时间D)在以下定义中C R是称为”宏名”的标识符 #define C R 0455、#define ADD(x) x+xmain()int m=1,n=2,k=3;int sum=ADD(m+n)*k;printf(“sum=%d”,sum);上面程序的运行结果是( )。A)sum=9 B)sum=10 C)sum=12 D)sum=186、以下程序的运行结果是( )。#define MIN(x,y) (x)(B)?(A):(B) #define PARTY(Y) printf(“Y=%dt“,Y)main()int a=1,b=2,c=3,d=4,t;T=MAX(a+b,c+d);PRINT(t);A)Y=3 B)存在语法错误 C)Y=7 D)Y=015、下程序段中存在错误的是( )。A)#define array_size 100 Int array1array_size;B)#define PI 3.14159 #define S(r) PI*(r)*(r) Area=S(3.2);C)#define PI 3.14159 #define S(r) PI*(r)*(r) Area=S(a+b);D) #define PI 3.14159 #define S(r) PI*(r)*(r).Area=S(a);. area=S(a);16、请读程序#include#defineMUL(x,y)(x)*ymain()int a=3,b=4,c;c=MUL(a+,b+);printf(%dn,c);上面程序的输出结果是( )。A.12 B.15 C.20 D.1617、#define能做简单的替代,用宏替代计算多项式4*x*x+3*x+2之值的函数F,正确的宏定义是( )。A.#definef(x)4*x*x+3*x+2 B.#definef4*x*x+3*x+2C.#definef(a)(4*a*a+3*a+2)D.#define(4*a*a+3*a+2)f(a)18、对下面程序段#define A 3#define B(a) (A+1)*a) . .x=3*(A+B(7);正确的判断是( )。A.程序错误,不许嵌套宏定义 B.x=93 C.x=21 D.程序错误,宏定义不许有参数19、以下程序中,第一个输出值(1)( )。第二输出值是(2)( ).#include#defineM 3#defineN (M+1)#defineNM N*N/2main()printf(%dn,NN);printf(%d,5*NN); 1A.3 B.4 C.6 D.82A.17 B.18 C.30 D.4020、以下程序的输出结果为( )。#include#define(y) 3.84+y#definePR(a) printf(%d,(int)(a) #definePRINT(a) PR(a);putchar(n)main()int x=2;PRINTF(F(3)*x);A.8 B.9 C.10 D.1121、以下程序的输出结果为( )。#definePT 5.5#defineS(x) PT*x*xmain()inta=1,b=2;printf(%4.1n,S(a+b);A.12.0 B.9.5 C.12.5 D.33.522、以下在任何情况下计算平方数时都不会引起二义性的宏定义是( )。A.#define POWER(x)x*x B.#define POWER(x)(x)*(x)C.#define POWER(x)(x*x) D.#define POWER(x)(x)*(x)23、在“文件包含”预处理语句的使用形式中,当#include后面的文件名用“”括起时,寻找被包含文件的方式是( )。A)直接按系统设定的标准方式搜索目录B)先在源程序所在目录搜索,再按系统设定的标准方式搜索C)仅仅搜索源程序所在目录D)仅仅搜索在前目录24、在“文件包含”预处理语句的使用形式中,当#include后面的文件名用括起时,寻找被包含文件的方式是( )。A)仅仅搜索当前目录 B)仅仅搜索源程序所在目录C)直接按系统设定的标准方式搜索目录 D)先在源程序所在目录搜索,再按系统设定的标准方式搜索25、请读程序#define LETTER 0main()char str20=C Language,c;int i;i=0;while(c=stri)!=0)i+;#if LETTERif(c=a&c=A&c=Z)c=c+32;#endifprintf(%c,c);上面程序的运行结果是( )。A)C Language B)c language C)C LANGUAGE D)c LANGUAGE26、以下正确的描述是( )。A)C语言的预处理功能是指定完成宏替换和包含文件的调用B)预处理指令只能位于C源程序文件的首部C)凡是C源程序中行首以“#”标识的控制行都是预处理指令D)C语言的编译预处理就是对源程序进行初步的语法检查27、C语言提供的预处理功能包括条件编译,其基本形式为:#XXX标识符程序段1#else程序段endif 这里XXX可以是( )。)define 或include B)ifdef 或include C) ifdef 或 ifndef 或define D)ifdef 或ifndef 或if二、填空题1、设有以下宏定义:#define WIDTH 80 #define LENGTH WIDTH+40 则执行赋值语句:;(v为int型变量)后,k的制式【 】。2、设有以下宏定义:define WIDTH 80 #define LENGTH (WIDTH+40) 则执行赋值语句:k=LENGTH*20;(k为int 型变量)后,k的值是【 】。3、下面程序运行结果是【 】。define DOUBLE(r) r*r main() int x=1 ,y=2,t; t=DOUBLE(x+y); printf(“%dn”,t); 4、 下面的运行结果是【 】。#define MUL(z) (z)*(z) main() printf(“%dn”,MUL(1+2)+3); 5、 下面程序的运行结果是【】。#define POWER(x) (x)*(x) main() int i=1; While(i(b)? (a)(c)? (a):(c) ):(b)(C)?(b):(c)main()int x,y,z x =l; y=2;

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论