c语言 交换两个数
如图具体错误在哪阿啊啊#include<stdio.h>intmain(){inta,b,d,f;scanf("%d%d",&a,&b);d=b,a=f;printf("...
如图具体错误在哪阿啊啊
#include<stdio.h>
int main()
{
int a,b,d,f ;
scanf("%d%d",&a,&b);
d=b, a=f ;
printf("%d %d\n",&d,&f);
return 0;
}
定义一个带参的宏,使两个参数的值互换,并写出程序,输入两个数作为使用宏时的实参。输出已交换后的两个值。
两个数,空格隔开
交换后的两个数,空格隔开 展开
#include<stdio.h>
int main()
{
int a,b,d,f ;
scanf("%d%d",&a,&b);
d=b, a=f ;
printf("%d %d\n",&d,&f);
return 0;
}
定义一个带参的宏,使两个参数的值互换,并写出程序,输入两个数作为使用宏时的实参。输出已交换后的两个值。
两个数,空格隔开
交换后的两个数,空格隔开 展开
2个回答
展开全部
printf("%d %d\n", &d, &f); // 这里是输出的是两个变量的存储地址,不是这两个变量的值
// 定义两个数的值交换宏实现
#include <stdio.h>
#define SWAP(x,y) { (x)=(x)+(y); (y)=(x)-(y); (x)=(x)-(y); }
int main(void)
{
int x = 1;
int y = 2;
printf("x=%d, y=%d.\n", x, y);
SWAP(x,y);
printf("x=%d, y=%d.\n" ,x ,y);
return 0;
}
// 定义两个数的值交换宏实现
#include <stdio.h>
#define SWAP(x,y) { (x)=(x)+(y); (y)=(x)-(y); (x)=(x)-(y); }
int main(void)
{
int x = 1;
int y = 2;
printf("x=%d, y=%d.\n", x, y);
SWAP(x,y);
printf("x=%d, y=%d.\n" ,x ,y);
return 0;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询