相关题目
C语言的编译系统对宏命令的处理是( )。
若有宏定义如下:
# define X 5
# define Y X+1
# define Z Y*X/2
则执行以下printf 语句后, 输出结果是( )。
int a ; a = Y ;
printf ( "%d\n " ,Z ) ;
printf ( "% d\n” , --a ) ;
若有以下宏定义:
# define N 2
# define Y( n )(( N + 1 ) *n)
则执行语句Z=2 *(N + Y ( 5 ) ) ; 后的结果是( )。
若有宏定义: # define MOD( x , y ) x % y,则执行以下语句后的输出为( )。
int z , a =15 , b = 100 ;
z = MOD ( b , a ) ;
printf ( " % d \ n " , z + + ) ;
以下程序的运行结果是( )。
# define MAX ( A , B ) ( A ) > ( B ) ? ( A ) : ( B )
# define PRINT ( Y ) printf ("Y=%d \t" , Y )
main ( )
{ int a=1 , b = 2 , c = 3 , d = 4 , t ;
t=MAX ( a + b , c + d ) ;
PRINT ( t ) ;
}
以下程序段中存在错误的是( )。
请读程序:
# include
# define MUL ( x , y ) ( x )* y
main ( )
{ int a = 3 , b = 4 , c ;
c = MUL ( a ++, b ++) ; printf (”%d\n” ,c ) ;
}
上面程序的输出结果是( )。
#define 能作简单的替代, 用宏替代计算多项式4 * x *x +3 *x +2 之值的函数f , 正确的宏定义是( )。
对下面程序段:
# define A 3
# define B(a) ((A+1 )*a )
:
x = 3*( A + B (7));
正确的判断是( )。
以下程序中, 第一个输出值是( ),第二个输出值是( )。
# include
# define M 3
# define N (M+1)
# define NN N*N/2
main ( )
{ printf ( "%d\n" , NN ) ;
printf (“%d”, 5*NN ) ;
}
