一道C语言题目,请高手帮个忙,急用!
来源:学生作业帮 编辑:搜狗做题网作业帮 分类:综合作业 时间:2024/07/14 05:45:04
一道C语言题目,请高手帮个忙,急用!
swap(int *p1,int *p2)
{ int p;
p=*p1;
*p1=*p2;
*p2=p;
}
main()
{ int a,b;
int *pointer_1,*pointer_2;
scanf("%d,%d",&a,&b);
pointer_1=&a; pointer_2=&b;
if(a
swap(int *p1,int *p2)
{ int p;
p=*p1;
*p1=*p2;
*p2=p;
}
main()
{ int a,b;
int *pointer_1,*pointer_2;
scanf("%d,%d",&a,&b);
pointer_1=&a; pointer_2=&b;
if(a
![一道C语言题目,请高手帮个忙,急用!](/uploads/image/z/638952-24-2.jpg?t=%E4%B8%80%E9%81%93C%E8%AF%AD%E8%A8%80%E9%A2%98%E7%9B%AE%2C%E8%AF%B7%E9%AB%98%E6%89%8B%E5%B8%AE%E4%B8%AA%E5%BF%99%2C%E6%80%A5%E7%94%A8%21)
1 swap函数的两个参数是指针类型,不是普通的int类型.
注意函数定义中的*是说明参数是指针.
2 如果这样定义,函数调用无效.
你要知道函数会新开辟空间存储x,y,它们的变动不影响实际参数的值.
函数分为值传递和地址传递,本问题中必须用地址传递.(上面那个人回答完全不对)
从你的问题可以看出你对指针理解非常不好,需要认真把书学好,再做这个题目.
注意函数定义中的*是说明参数是指针.
2 如果这样定义,函数调用无效.
你要知道函数会新开辟空间存储x,y,它们的变动不影响实际参数的值.
函数分为值传递和地址传递,本问题中必须用地址传递.(上面那个人回答完全不对)
从你的问题可以看出你对指针理解非常不好,需要认真把书学好,再做这个题目.