但事实上 swap 函数只是对 p1 和 p2 两个指针的值进行交换,并没有交换 a[0] 和 a[1] 的值。
5,9
C语言,用指针方法,将3个数按有小到大输出顺序!
include<stdio.h> void swap(int *p1,int *p2){ int t;t=*p1;p1=*p2;p2=t;} void main(){ int *pa,*pb,*pc;int a,b,c;printf("enter a,b,c:");scanf("%d,%d,%d",&a,&b,&c);pa=&a;pb=&b;pc=&c;if(*pa>*pb)swap(pa,pb);if(*pa>*pc)swap(pa,pc);if(...
怎么用指针法实现交换两个变量的值,并在主函数中调用?
include <stdio.h> void swap(int *p1,int *p2){ int t;t=*p1; *p1=*p2; *p2=t; //交换p1和p2所指向的内容 } void main(){int a,b;int *pointer_1, *pointer_2;printf("请输入两个数字:\n");scanf("%d%d",&a,&b);pointer_1=&a;pointer_2=&b;swap...
c语言编程。指针作为函数参数,实现对输入的两个整数按大小顺序输出.下 ...
第六七行改为p1=&a,p2=&b 另:swap函数中,将所有p1,p2前面都加个 * 号
这样为什么不能使p1,p2的指向发生变化?
swap里你交换的是形参p1\p2的地址,但是参数值不是引用,所以不传出,影响不到main里的p1和p2。void swap(int *&p1,int *&p2)
这个C语言C程序swap()出了什么问题
include<stdio.h> void swap(int *p1,int *p2 );main(){ int a=3;int b=5;swap(&a,&b);printf("%d%d",a,b);} void swap( int *p1,int *p2){int temp;temp =*p1;p1=*p2;p2=temp;} 如上在swap的两个应该传入是地址,,而不是数值 ...
C语言比较3个数的大小
include <stdio.h> void main(){ int max(int x,int y,int z);int a,b,c,d;scanf("%d%d%d",&a,&b,&c);d=max(a,b,c);printf("max = %d\n",d);} int max(int x,int y,int z){ int m ,n;if(x>y) m = x;else m = y;if(m>z) n = m;else n = z;retur...
void swap(int * p1,int *p2)
/*这个自定义函数没有问题,可能是主函数里出问题了*/ include<stdio.h> void swap(int *p1,int *p2){ int t=*p1;p1=*p2;p2=t;} int main(){ int a=1,b=5;printf("a=%d b=%d\n",a,b);swap(&a,&b);//因为形参是指针变量,所以实参必须是变量值的地址,我觉得应该是这些错...
...swap(int *p1,int *p2) {int *p; p=p1; p1=p2; p2=p; }
注意内容和地址,形参和实参的区别。看注释 swap(int *p1,int *p2){ int *p;/*下面这段只是把形参p1,p2本身的值对换,函数返回后,对原变量无影响*/ p=p1;p1=p2;p2=p;/*事实上,应该是把p1、p2指向的地址中的内容对换,改成代码如下*/ int temp;temp=*p1;p1=*p2;p2=temp;} ...
c++编程;如何用if语句实现从键盘输入3个整数按从大到小的顺序输出?_百 ...
include<stdio.h> void swap(int *p1, int *p2) { int temp = *p1; *p1 = *p2; *p2 = temp; } void exchange(int *p1,int *p2,int *p3) { void swap(int *p1, int *p2); if (*p1 > *p2)swap(p1, p2); if (*p1 > *p3)swap(p1, p3); if (*...
C语言编程题,输入3个整数,由小到大输出,用指针变量
include<stdio.h> int main(void){ int *a1,*b1,*c1,a,b,c;a1=&a;b1=&b;c1=&c;scanf("%d%d%d",a1,b1,c1);if(*a1>*b1){ a1=*a1^*b1;b1=*a1^*b1;a1=*a1^*b1;} if(*a1>*c1){ a1=*a1^*c1;c1=*a1^*c1;a1=*a1^*c1;} if(*b1>*c1){ b1=*b1^*c1;c1=*b1...