文档详情

C语言预处理指令试题.doc

发布:2017-08-14约3.11千字共7页下载文档
文本预览下载声明
下面程序的运行结果是( ) #define ADD(x) x+x main() { 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=18 参考答案 B下面程序的运行结果是( ) #define MIN(x,y) (x)(y)?(x):(y) main() { int i=10,j=15,k; k=10*MIN(i,j); printf(“%d”,k); } A?15 B?10 C?100 D?150 参考答案 A在宏定义#define PI 3.14159中,用宏名代替一个 A?常量 B?单精度数 C?双精度数 D?字符串 参考答案 D在宏定义#define PI 3.14159中,用宏名代替一个 A?常量 B?单精度数 C?双精度数 D?字符串 参考答案 D下面有关宏替换的叙述不正确的是 A?宏替换不占用运行时间 B?宏名无类型 C?宏替换只是字符替换 D?宏名必须用大写字母表示 参考答案 DC语言的编译系统对宏命令的处理是 A?在程序运行时进行的 B?和C程序中的其他语句同时进行编译的 C?在程序连接时进行的 D?在对源程序中其它成分正式编译之前进行的 参考答案 D下面程序的运行结果是( ) #define PT 5.5 #define S(x) PT*x*x main() { int a=1,b=2; printf(“%4.1f”,S(a+b)); } A?12.0 B?9.5 C?12.5 D?33.5 参考答案 B下面程序的运行结果是( ) #define LETTER 0 main() { char str[20]=”C Language”,c; int i=0; while((c=str[i])!=’\0’) { i++; if(!LETTER) if(c=’a’c=’z’) c—=32; else c+=32; printf(“%c”,c); } } A?C Language B?c language C?c@lANGUAGE D?c Language 参考答案 C以下定义中错误的是 A?#define _abc 30 B?#define pi 3.1415 C?#define num 1000; D?#define name clinton 参考答案 C英文小写字母d的ASCII码为100,英文大写字母D的ASCII码为 A?50 B?66 C?52 D?68 参考答案 D以下叙述正确的是 A?可以把define和if定义为用户标识符 B?可以把define定义为用户标识符,但不能把if定义为用户标识符 C?可以把if定义为用户标识符,但不能把define定义为用户标识符 D?define和if都不能定义为用户标识符 参考答案 B 以下叙述中正确的是 A?预处理命令行必须位于C源程序的起始位置 B?在C语言中,预处理命令行都以“#”开头 C?每个C程序必须在开头包括预处理命令行:#include D?C语言的预处理不能实现宏定义和条件编译的功能 参考答案 B有以下程序 #define P 3 #define F(int x) { return (P*x*x);} main() { printf(%d ,F(3+5)); } 程序运行后的输出结果是 ( )。 A?192 B?29 C?25 D?编译出错 参考答案 D有以下程序    # define f(x) (x*x)    main()    { int i1, i2;    i1=f(8)/f(4) ; i2=f(4+4)/f(2+2) ;    printf(%d, %d\n,i1,i2);    }   程序运行后的输出结果是( )。    A?64, 28 B?4, 4 C?4, 3 D?64, 64 参考答案 C有以下程序   #define f(x) x*x   main( )   { int i;    i=f(4+4)/f(2+2);    printf(“%d\n”,i);   }   执行后输出结果是( )。    A?28  B?22 C?16 D?4 参考答案 A有如下程序 #define N 2 #define M N+1 #define NUM 2*M+1 #main() { int i;  for(i=1;i=NUM;i++)printf(“%d\n”,i); } 该程序中的for循环执行的次数是( )。 A) 5    B) 6    C) 7    D) 8 A?5 B?6 C?7 D?8 参考答案 B下列程序执行
显示全部
相似文档