舟山蜈蚣峙码头:c语言问题2

来源:百度文库 编辑:高考问答 时间:2024/04/29 03:39:27
10、在宏定义#define PI 3.14159中,用宏名PI代替一个【 】。
(A) 常量
(B) 单精度数
(C) 双精度数
(D) 字符串

11、以下有关宏替换的叙述不正确的是【 】。
(A) 宏替换不占运行时间
(B) 宏名无类型
(C) 宏替换只是字符替换
(D) 宏名必须用大写字母表示

12、以下在任何情况下计算平方数时都不会引起二义性的宏定义是【 】。
(A) #define POWER(x) x*x
(B) #define POWER(x) (x)*(x)
(C) #define POWER(x) (x*x)
(D) #define POWER(x) ((x)*(x))

13、在"文件包含"预处理语句的使用形式中,当#include后面的文件名用双引号括起时,寻找被包含文件的方法是【 】。
(A) 直接按系统设定的标准方式搜索目录
(B) 先在源程序所在的目录搜索,再按系统设定的标准方式搜索
(C) 仅仅搜索源程序所在目录
(D) 仅仅搜索当前目录

14、在"文件包含"预处理语句的使用形式中,当#include后面的文件名用尖括号括起时,寻找被包含文件的方法是【 】。
(A) 仅仅搜索当前目录
(B) 仅仅搜索源程序所在目录
(C) 直接按系统设定的标准方式搜索目录
(D) 先在源程序所在的目录搜索,再按系统设定的标准方式搜索

15、以下正确的描述是【 】。
(A) C语言的预处理功能是指完成宏替换和包含文件的调用
(B) 预处理指令只能位于C源程序的首部
(C) 凡是C源程序中行首以"#"标识的控制行都是预处理指令
(D) C语言的编译预处理就是对源程序进行初步的语法检查

16、设有以下宏定义:
#define WIDTH 80
#define LENGTH WIDTH+40
执行赋值语句:v=LENGTH*2;(v为int型变量)后,v的值是【 】。
17、设有以下宏定义:
#define WIDTH 80
#define LENGTH (WIDTH+40)
执行赋值语句:n=LENGTH*2;(n为int型变量)后,n的值是【 】。
18、下面程序的运行结果是【 】。
#define DOUBLE(r) r*r
main( )
{
int x=1,y=2,t;
t=DOUBLE(x+y);
printf("%d\n",t);
}

19、下面程序的运行结果是【 】。
#define MUL(z) (z)*(z)
main( )
{
printf("%d\n",MUL(1+2)+3);
}

20、下面程序运行的结果是【 】。
#define POWER(x) ((x)*(x))
main( )
{
int i=1;
while (i<=4) printf("%d\t",POWER(i++));
printf("\n");
}

21、下面程序的运行结果是【 】。
#define EXCH(a,b) {int t; t=a; a=b; b=t;}
main( )
{
int x=5, y=9;
EXCH(x,y);
printf("x=%d,y=%d\n",x,y);
}

22、以下程序的运行结果是【 】。
#define A 4
#define B(x) A*x/2
main( )
{
float c,a=4.5;
c=B(a);
printf("%5.1f\n",c);
}

10、D
11、D
12、D
13、B
14、C
15、C
16、160
17、240
18、5
19、12
20、2 12
21、x=9,y=5
22、 9.0
上述答案100%正确!!!

最好给个完整的程序。
看不懂有什么区别和联系。
ch=0 只是说,ch的asc吗为0
ch=null 却是又把ch定义为一个空值。
前后没有什么联系啊?
0是零 null是空 两个是不一样滴
一个是存在的确确实实的数字0
一个是空空的不存在的