更多"[单选题]在宏定义#define PI 3.14159中,用宏名代替一"的相关试题:
[单选题]设有以下宏定义:
#define N 3
#define Y(n) ( (N+1)*n)
则执行语句:z=2 * (N+Y(5+1));后,z的值为()。
A.出错
B.42
C.48
D.54
[单选题]若程序中有宏定义行:#define N 100 则以下叙述中正确的是()。
A.宏定义行中定义了标识符N的值为整数100
B.在编译程序对C源程序进行预处理时用100替换标识符N
C.对C源程序进行编译时用100替换标识符N
D.在运行时用100替换标识符N
[判断题]宏定义的作用域为从宏定义命令起到源程序结束。
A.正确
B.错误
[判断题]宏定义是用宏名来表示一个数,在宏代换时以该数取代宏名。
A.正确
B.错误
[判断题]宏定义是用宏名来表示一个字符串,在宏代换时以该字符串取代宏名。
A.正确
B.错误
[填空题]编译预处理包括宏定义、文件包含、()等。
[填空题]编译预处理包括宏定义、()、条件编译等。
[判断题]宏定义的作用域为从源程序开始起到源程序结束止。
A.正确
B.错误
[单选题]有如下程序
#define N 4
#define M N+2
#define NUM 2*M+1
Main()
{ int i;
For(i=1;i<=NUM;i++)printf("%d\n",i);
}
该程序中的for循环执行的次数是()。
A.14
B.11
C.10
D.13
[单选题]有如下程序
#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
[单选题]有如下程序
#define N 3
#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.8
C.7
D.6
[单选题]有如下程序
#define N 3
#define M N+2
#define NUM 2*M+1
Main()
{ int i;
For(i=1;i<=NUM;i++)printf("%d\n",i);
}
该程序中的for循环执行的次数是()。
A.5
B.9
C.7
D.8
[单选题]有以下程序
#define N 5
#define M N+1
#define f(x) (x*M)
main()
{int i1,i2;
i1=f(2);
i2=f(1+1);
printf(“%d %d\n”,i1,i2); }
程序的运行结果是()。
A.12 12
B.11 7
C.11 11
D.12 7
[单选题]程序中头文件type1.h的内容是:
#define N 5
#define M1 N*3
程序如下:
#include "type1.h"
#define M2 N*2
Main()
{int i;
I=M1+M2; printf("%d\n",i);
}
程序编译后运行的输出结果是()。
A.10
B.20
C.25
D.30
[单选题]对下面程序段:
#define A 3
#define B(a) ((A+1)*a)
...
x=3*(A+B(7));正确的判断是()。
A.程序错误,不许嵌套宏定义
B.程序错误,宏定义不许有参数
C.x=93
D.x=21
[单选题]有一个名为init.h的文件,内容如下:
#define HDY(A,B) A/B
#define PRINT(Y) printf("y=%d\n",Y)
有以下程序
#include "init.h"
Main()
{ int a=1,b=2,c=3,d=4,k;
K=HDY(a+c,b+d);
PRINT(k);
}
下面针对该程序的叙述正确的是()。
A.编译出错
B.运行出错
C.运行结果为 y=0
D.运行结果为 y=6