- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C语言程序设计频教程及习题答案-徐红波-第09章
C程序设计; 第9章 预处理命令;;;9.1 宏定义9.1.1 不带参数的宏定义;[例9.1]使用不带参数的宏定义;说明:;9.1.2 带参数的宏定义;说明:;带参数的宏定义与函数是不同的,主要有:;9.2 “文件包含”处理;[例9.6]将例9.5的格式宏做成头文件,把它包含在用户程序中;说明:;9.3 条件编译;条件编译命令有以下几种形式:;;;习题;9.2 输入两个整数,求它们相除的余数。用带参数的宏来实现,编程序。
#include stdafx.h
#define MOD(A, B) A%B
int main(int argc, char* argv[])
{
int a, b;
a=5;
b=2;
printf(%d\n, MOD(a, b));//a%b
return 0;
};9.3 三角形的面积为area=sqrt(s(s-a)(s-b)(s-c)其中s=(a+b+c)/2。a、b、c为三角形的三边。定义两个带参数的宏,一个用来求s,另一个宏用来求area。写程序,在程序中用带实参的宏名来求面积area。
#include stdafx.h
#include math.h
#define S(A, B, C) (A+B+C)/2
#define AREA(A, B, C) sqrt(S(A,B,C)*(S(A,B,C)-a)*(S(A,B,C)-b)*(S(A,B,C)-c))
int main(int argc, char* argv[])
{
float a, b, c;
a=3.0;b=4.0;c=5.0;
printf(%f\n, AREA(a, b, c));
return 0;
};9.4 给年份year定义一个宏,以判别该年份是否闰年。提示:宏名可定为LEAP_YEAR,形参为y,即定义宏的形式为#define LEAP_YEAR(y) (读者设计的字符串)
在程序中用以下语句输出结果:
if (LEAP_YEAR(year)) printf(“%d is a leap year.\n”, year);
else printf(“%d is not a leap year.\n”, year);
#include stdafx.h
#define LEAP_YEAR(Y) ((Y%4==0 Y%100!=0) || Y%400==0)
int main(int argc, char* argv[])
{
int year=1980+1;
if(LEAP_YEAR(year))
printf(%d is a leap year.\n, year);
else
printf(%d is not a leap year.\n, year);
return 0;
};9.6 请设计输出实数的格式,实数用“%6.2f”格式输出。要求:
(1)一行输出1个实数;
(2)一行内输出2个实数;
(3)一行内输出3个实数。
#include stdafx.h
#define F %6.2f
#define PR printf
#define NL \n
#define F1 F NL
#define F2 F F NL
#define F3 F F F NL
int main(int argc, char* argv[])
{
float a=1.0, b=2.0, c=3.0;
PR(F1, a);
PR(F2, a, b);
PR(F3, a, b, c);
return 0;
}
;9.7 设计所需的各种的输出格式(包括整数、实数、字符串等),用一个文件名“format.h”把这些信息都放到此文件内,另编一个程序文件,用#include “format.h”命令,以确保能使用这些格式。
#include stdafx.h
#include format.h
int main(int argc, char* argv[])
{
PR(D1, 1);
PR(S, hello);
PR(F1, 2.0);
return 0;
}
;format.h;9.8 分别用函数和带参数的宏,从3个数中找出最大数。;9.10 用条件编译方法实现以下功能: 输入一行电报文字,可以任选两种输出:一为原文输出;一为将字母变成其下一字母,其他非字母字符不变。用#define命令来控制是否要译成密码。例如: #define CHANGE 1 则输出密码。若 #define CHANGE 0 则不译成密码,按源码输出。;#include stdafx.h
#define CHANGE 1
int main(int argc, char
您可能关注的文档
最近下载
- OIE规则和中国进展.ppt VIP
- 疾病预防控制体系建设中存在的问题及建议2025.pdf VIP
- AP微积分BC 2024年真题 附答案和评分标准 AP Calculus BC 2024 Real Exam with Answers and Scoring Guidelines.pdf VIP
- 一种环氧环己烷制备己二腈的方法.pdf VIP
- 标准图集-陕09J05 卫生间、盥洗室及洗池 09系列建筑图集.pdf VIP
- 2024年贵州省中考语文试卷(含答案与解析).pdf VIP
- 1湖南省电网销售电价表-附件1.doc
- 传动设备知识培训课件.pptx VIP
- 起重吊装模块设备设施风险分级管控清单.pdf VIP
- 《城镇给水管道非开挖修复更新工程技术规程 T244-2016》.doc VIP
文档评论(0)