(1)定义两个函数,分别为void swap1(int a, int b)和void swap2(int *a, int *b),用于交换a,b的值。

2024-11-26 17:27:00
推荐回答(2个)
回答1:

楼上的有错误 swap1函数没有返回值,故主函数输出的第一批中a,b的值并没有交换。

#include
void swap1(int a, int b);
void swap2(int *a, int *b);
void main(int a,int b)
{
printf("input a,b:");
scanf("%d%d",&a,&b);
swap1(a,b);
swap2(&a,&b);
printf("a=%d,b=%d",a,b);
}
void swap1(int a, int b)
{
int m; m=a; a=b; b=m;
printf("a=%d,b=%d\n",a,b);
}
void swap2(int *a, int *b)
{
int m; m=*a; *a=*b; *b=m;

}

回答2:

#include
void swap1(int a, int b);
void swap2(int *a, int *b);
void main(int a,int b){
printf("input a,b:");
scanf("%d%d",&a,&b);
swap1(a,b);
printf("a=%d,b=%d\n",a,b);
swap2(&a,&b);
printf("a=%d,b=%d",a,b);

}
void swap1(int a, int b)
{
int m;
m=a;
a=b;
b=m;
}
void swap2(int *a, int *b)
{
int m;
m=*a;
*a=*b;
*b=m;
}