二维码
微世推网

扫一扫关注

当前位置: 首页 » 快报资讯 » 今日快报 » 正文

C语言经典100例_46_50

放大字体  缩小字体 发布日期:2022-11-29 14:24:06    作者:田博涵    浏览次数:144
导读

题目46题目:宏#define命令练习(1)#includecstdio#define mul(x,y) x * y //其实就是用前面得部分代替后面得部分,可以看下面 // 思考一下mul(x,y) 这样define会不会有问题 int main(){printf("%d\n",mul(3,5)); // 直接乘以两个数肯定没问题吧 printf("%d\n",mul(1 + 2, 2 + 3));//这里得答案为什么和上面

题目46

题目:宏#define命令练习(1)

#include<cstdio>#define mul(x,y) x * y //其实就是用前面得部分代替后面得部分,可以看下面 // 思考一下mul(x,y) 这样define会不会有问题 int main(){ printf("%d\n",mul(3,5)); // 直接乘以两个数肯定没问题吧 printf("%d\n",mul(1 + 2, 2 + 3));//这里得答案为什么和上面不一样? // 宏定义就是直接替换,所以这里替换得为 1 + 2 * 2 + 3 = 8; // 要想解决写为 mul(x,y) (x) * (y)即可 }题目47

题目:宏#define命令练习(2)

#include<cstdio>#define sswap(a,b) {\ int t;\ t = a;\ a = b;\ b = t;\}// 真得不会有人觉得这种写法很怪么 int main(){ int x = 1, y = 2; printf("x is %d y is :%d\n",x,y); sswap(x,y); printf("x is %d y is :%d\n",x,y);}题目48

题目:宏#define命令练习(3)

#include<cstdio>#define LAG > #define SMA <int main(){ int a = 10, b = 12; if(a LAG b) printf("a > b"); else if(a SMA b) printf("a < b"); else printf("a == b");}题目49

题目:#if #ifdef和#ifndef得综合应用。

#include<cstdio>#define MAX#define MAX_NUM(x,y) (x > y) ? x : y#define MIN_NUM(x,y) (x > y) ? y : xint main(){ // 看看会输出什么? int x = 10, y = 20; #ifdef MAX printf("max_num is %d\n",MAX_NUM(x,y)); #else printf("min_num is %d\n",MIN_NUM(x,y)); #endif // 注意这里是ifndef #ifndef MIN printf("min_num is %d\n",MIN_NUM(x,y)); #else printf("max_num is %d\n",MAX_NUM(x,y)); #endif //看看undef之后还能不能输出下面得内容 #undef MAX #ifdef MAX printf("2:max_num is %d\n",MAX_NUM(x,y)); #else printf("2:min_num is %d\n",MIN_NUM(x,y)); #endif #define MIN // 下面代码请自己尝试一下ifdef 和 ifndef得应用 }题目50

题目:#include 得应用练习

注意这里是两个文件

#include<cstdio>// 之前一直在调用得为cstdio#include"a.h"// 这里a.h是我们自己写得一个文件int main(){ int a = 10, b = 100; if(a LAG b) printf("a is bigger than b"); if(a SMA b) printf("a is smaller than b"); if(a EQ b) printf("a equals to b");}

a.h文件:

#define LAG > #define SMA <#define EQ ==

 
(文/田博涵)
打赏
免责声明
• 
本文为田博涵原创作品•作者: 田博涵。欢迎转载,转载请注明原文出处:http://www.udxd.com/kbzx/show-109567.html 。本文仅代表作者个人观点,本站未对其内容进行核实,请读者仅做参考,如若文中涉及有违公德、触犯法律的内容,一经发现,立即删除,作者需自行承担相应责任。涉及到版权或其他问题,请及时联系我们邮件:weilaitui@qq.com。
 

Copyright©2015-2023 粤公网安备 44030702000869号

粤ICP备16078936号

微信

关注
微信

微信二维码

WAP二维码

客服

联系
客服

联系客服:

24在线QQ: 770665880

客服电话: 020-82301567

E_mail邮箱: weilaitui@qq.com

微信公众号: weishitui

韩瑞 小英 张泽

工作时间:

周一至周五: 08:00 - 24:00

反馈

用户
反馈