66问答网
所有问题
int main(){ int a,b,t; int *q=&a,*p=&b; a=2;b=3; *q=b; *p=a; /* t=*p;
为什么不是输出3,2
举报该问题
其他回答
第1个回答 2016-12-30
fun中 a的值是x的地址 b的值是y的地址 记住 a和b的值也是复制过来的 然后 你把他们的值交换了 想想看和x和y的地址有什么关系呢?你在函数中 应该用int c;c=*a;*a=*b;*b=c;
这样就通过地址修改了地址中的值
追问
这是完整的,求指点
上面说的我不太明白
相似回答
c语言中void函数的返回值,是怎么回事,例如下面这个函数
答:
void 代表空返回值。即无返回值 所给的案例中,swap函数是一个无返回值函数 但是该函数带两个输入参数 当主函数调用该函数时 只需要给定两个输入参数即可 该函数执行完毕后,无返回值 接下来继续往下执行,执行printf语句。
C++,函数内交换两个指针的指向,求助~
答:
void ExChge
(int* p
1
,
int* p2
){
int tmp
=*p
1;p1=*p2;p2=tmp;//交换局部变量p1、p2所指向的内存的数据 } 改成这样就可以了 脑袋里要有个内存的概念 int* tmp=p1;p1=p2;p2=tmp;只是交换了局部变量p1、p2的值
C语言如何用指针求两个正整数的最大公约数和最小公倍数呢?
答:
int
main(){
int
a,b,t
,r,x;int *p,*q;//定义指针变量
p=&a;
//指针p指向a
q=&b;
//指针q指向b scanf("%d%d",p,q);if(*p<*q)//保证第一个数大于第二个数 {
t=*p;p=*q;q=t;
} r=(*p)*(*q);x=*p%*q;while(x)//辗转相除法求最大公约数;{ p=*q;q=x;x=*p...
C++问题~~
答:
swap的参数是指针,你应该传入指针,是swap(p, q)不是swap
(*p,
*q);
C语言编程
答:
include<stdio.h> include<stdlib.h> int ch(int*,int*);
main(){
int a,b;int
*p,*q;
scanf("%d%d",&a,&b);
p=&a,q=&b;
ch(p,q);printf("%4d%4d\n"
,a,b
);system("pause");} int ch(int *x
,int
*y){ int
t;t=*
x;x=*y;y
=t;
} ...
C语言输入3个数排序输出,不知道哪里错了,为什么出乱码了
答:
*f
=t;
} if(*e>*f) {
t=*
e; *e=*f; *f=t; }}
int
main(){
int
a,b,
c; int *p,*q,*k;
p=&a;
q=&b;
k=&c; scanf("%d",p); scanf("%d",q); scanf("%d",k); delay(p,q,k); printf("%d %d %d"
,*p
,*q,*k);...
大家正在搜
int main和main的区别
c语言int main和main
int main(void)
int main(void)含义
void main和int的区别
void main()
c语言intmain和void
intmain怎么读
int a[4][4]
相关问题
main() {int a,b, *p=&a,*q=&b; ...
void fun(int *a,int *b) { int...
viod main() { int a,b,c; int *...
main() { int a=3,b=4,*p,*q,r; ...
输出结果是? #include <stdio.h> void...
C语言 main() {int a[5]={1,2,3,4,...
main() { int a=1,b=3,c=5;int *...
int a,b; int*p1,*p2,*p; scanf(...