解题基础:
答案
#include<stdio.h> #define Y(a,b) t=a;a=b;b=t;//两数交换位置 int main(){ int a,b,t; scanf("%d%d",&a,&b); Y(a,b) printf("%d %d",a,b); return 0; }
注:宏定义是直接拿t=a;a=b;b=t;代替Y(a,b),实际上代码相当于
#include<stdio.h> int main(){ int a,b,t; scanf("%d%d",&a,&b); t=a;a=b;b=t; printf("%d %d",a,b); return 0; }
所以Y(a,b)后面不带分号;,它不是一条语句而是一个代号(相当于y=x+1直接就可以拿y代x+1)
0.0分
1 人评分
小九九 (C语言代码)浏览:568 |
C语言程序设计教程(第三版)课后习题7.2 (C语言代码)浏览:569 |
C语言程序设计教程(第三版)课后习题8.1 (C语言代码)浏览:774 |
C二级辅导-等差数列 (C语言代码)浏览:628 |
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:607 |
C语言程序设计教程(第三版)课后习题8.1 (C语言代码)浏览:443 |
字符串对比 (C语言代码)浏览:1469 |
C语言程序设计教程(第三版)课后习题7.5 (C语言代码)浏览:900 |
C语言训练-求s=a+aa+aaa+aaaa+aa...a的值 (C语言代码)浏览:636 |
WU-输入输出格式练习 (C++代码)浏览:1133 |