第12讲编译预处理和数组的应用.ppt

  1. 1、本文档共21页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第12讲编译预处理和数组的应用

第12讲 编译预处理和数组的应用 一、编译预处理 1、宏定义 2、文件包含 二、数组的应用 1、排序 2、查找 1、概念: 用标识符来表示一个字符串,标识符叫宏名。 一、宏定义: (P93) 2、无参宏定义 1)无参宏定义的一般格式: #define 标识符 字符串 例如:#define PI 3.14159 2)作用:   在宏定义之后,凡是该标识符出现的地方用对应的字符串来代替。 上面的定义之后,凡是PI都用3.14159来代替。 例 输入半径,计算以该半径为圆的周长与圆面积、球的体积与表面积。 #include stdio.h #define PI 3.14159 void main( ) { float r, yzc,ymj,qbmj,qtj; scanf(%f,r); yzc=2*PI*r; ymj=PI*r*r; qbmj=4*PI*r*r; qtj=4*PI*r*r*r/3; printf(%f,%f,%f,%f\n,yzc,ymj,qbmj,qtj); } 3、带参数的宏定义 (P94) 1)带参宏定义的一般格式: #define 标识符(参数表) 字符串 例如:#define ADD(x,y) x+y 2)作用:   在宏定义之后,凡是该标识符出现的地方用对应的字符串来代替,参数也作相应的替换。 上面的定义之后,程序中如果出现ADD(4,5),则用 4+5 来代替,出现ADD(a,b),则用 a+b 来代替。 #include stdio.h #define PI 3.14159 #define AREA(r) PI*r*r void main( ) { float x,s; x=10.0; s=AREA(x); printf(s=%.1f\n,s); } 写出下面程序的结果。 执行结果: s=314.2 #include stdio.h #define ADD(x,y) x+y #define MAX(x,y) xy?x:y void main( ) { int a=4,b=5,c,d; c=ADD(a,b); d=MAX(a,b); printf(c=%d\td=%d\n,c,d); float w,z; w=ADD(5.6,-5.8); z=MAX(5.6,-5.8); printf(w=%.1f\tz=%.1f\n,w,z); } 写出下面程序的结果。 执行结果: c=5 d=5 w=-0.2 z=5.6 写出下面程序的结果。 #include stdio.h #define MUL(x,y) x*y void main( ) { int a=3,b=4,c=5,d=6,m1,m2; m1=MUL(a,b); m2=MUL(a+b,c+d); printf(m1=%d\n,m1); printf(m2=%d\n,m2); } 执行结果: m1=12 m2=29 修改方法1: #include stdio.h #define MUL(x,y) (x)*(y) void main( ) { int a=3,b=4,c=5,d=6,m1,m2; m1=MUL( a , b ); m2=MUL( a+b , c+d ); printf(m1=%d\n,m1); printf(m2=%d\n,m2); } 执行结果: m1=12 m2=77 修改方法2: #include stdio.h #define MUL(x,y) x*y void main( ) { int a=3,b=4,c=5,d=6,m1,m2; m1=MUL(a,b); m2=MUL( (a+b) , (c+d) ); printf(m1=%d\n,m1); printf(m2=%d\n,m2); } 执行结果: m1=12 m2=77 1、 文件包含是C语言的一个重要功能,其作用是将另外一个文件的内容包含进来。C语言使用#include来实现,命令格式:

文档评论(0)

liudao + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档