c语言程序设计黄保和第二章,C语言程序设计答案(黄保和编)第7章.pdf

厦门大学本科生公共课 《C 程序设计基础》 教材习题答案 第七章 编译预处理

一、选择题

1、下列叙述中错误的是C )预处理命令必须位于源文件的开始处

2 、C 语言编译系统对宏替换的处理是在A )源程序编译前进行的

3、在宏定义“#define PI 3.14159 ”中,3.14159 是C )字符串

4 、设有宏定义“#define A B abcd ”,则宏替换时,A )宏名A 用B abcd 替换

5、下列有关宏的叙述中错误的是A )宏名必须使用大写英文字母

6、下列宏定义中,最不会引起二义性的是D )#define ADD(a,b) ((a)+(b))

7、设有宏定义“#define M 3+2 ”,则表达式2*M*3 的值为B )12

8、设有宏定义“#define Y(n) (4*n) ”,则表达式3+Y(5+1)的值为B )24

9、设有宏定义

#define N 3

#define M N+2

则表达式2*M/N 的值为A )6

10、在#include 命令中,#include 后面的文件名用双引号定界,则系统寻找被包含文件的方

式是D)先在源程序所在文件夹查找,查找失败后再到C 系统的Include 文件夹中查找

11、设有以下A 、B 两个程序段,则说法正确的是B )两个程序的目标代码不同,但运行结

果相同

//A 程序段 //B 程序段

#define N 3 #define N 3

void main() void main()

{ {

if(N>0) #if(N>0)

{ printf(“N=%d\n”,N);

printf(“N=%d\n”,N); #else

} printf(“N<0”);

else #endif

printf(“N<0”); }

}

12、执行以下程序,结果为A)DEBUG OK

#define DEBUG

void main()

{

#ifdef DEBUG

printf(“DEBUG”);

#endif

printf(OK);

}

二、编程题

1、编写一个计算圆的程序,将pi 值定义为符号常量

#include

#define pi 3.14

void main()

{

float r;

第1 页/共2 页

厦门大学本科生公共课 《C 程序设计基础》 教材习题答案 第七章 编译预处理

printf("输入圆的半径:");

scanf("%f", &r);

printf(" 圆的面积为%f\n", pi*r*r);

}

2 、将求圆柱体的体积写成带参数的宏定义,并使用该宏定义计算圆柱体的体积

#include

#define volumn(r,h) 3.14*r*r*h

void main(){

float r, h;

printf("输入圆柱底面积半径:");

scanf("%f", &r);

printf("输入圆柱的高:");

scanf("%f", &h);

printf(" 圆柱的体积为:%f", volumn(r,h));

}

3、定义一个带有3 个参数的宏MAX ,求3 个参数中的最大值

#include

#define MAX(a,b,c) a > b ? (a > c ? a : c) : (b > c ? b : c)

void main()

{

float a, b, c;

printf("输入三个数:");

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值