求教一道C语言题目,谢谢大家啦。
#include<stdio.h>voidswap(int*a,int*b){int*t;t=a;a=b;b=t;}main(){inti=3,j=5,*p=&i,*q=...
#include<stdio.h>
void swap(int *a,int *b)
{
int *t;
t=a; a=b; b=t;
}
main()
{
int i=3, j=5, *p=&i, *q=&j;
swap(p,q);
printf("%d %d\n",*p,*q);
}
这个为什么没有进行数据交换呢? 展开
void swap(int *a,int *b)
{
int *t;
t=a; a=b; b=t;
}
main()
{
int i=3, j=5, *p=&i, *q=&j;
swap(p,q);
printf("%d %d\n",*p,*q);
}
这个为什么没有进行数据交换呢? 展开
4个回答
展开全部
楼主你好
21. 下列选项中合法的函数说明语句是()。
A) double func( int a, int b );
B) double func( int a, b );
C) double func( a, int b );
D) double func( a, b );
22. 设有定义int a[]={1,3,5,7,9},*p=a;结果为7的表达式是()。
A) *(p+3)
B) *(p+4)
C) *p+3
D) *p+4
23. 设有定义int m, n, *p; 与语句“m=n;”等价的语句是()。
A) p=&n; m=*p;
B) p=&m; n=*p;
C) p=*n; m=*p;
D) p=*m; n=*p;
24. 设有定义int m=2,n=5,*p=&n;则语句“m=*p;”的结果是()。
A) 指针p指向m
B) 变量m的值变为5
C) 变量n的值变为2
D) 指针p指向m,同时变量m的值变为5
25. 设有说明int n; char str[80];与函数调用:n=hex2dec(str); 则函数hex2dec正确的函数说明应该是:()。
A) int hex2dec(char str[]);
B) void hex2dec(char str[]);
C) int hex2dec(char str);
D) void hex2dec(char str);
26. 设有定义char *p[]={"Shanghai","Beijing","Honkong"};则结果为'j'字符的表达式是()。
A) p[3][1]
B) *(p[1]+3)
C) *(p[3]+1)
D) *p[1]+3
21. 下列选项中合法的函数说明语句是()。
A) double func( int a, int b );
B) double func( int a, b );
C) double func( a, int b );
D) double func( a, b );
22. 设有定义int a[]={1,3,5,7,9},*p=a;结果为7的表达式是()。
A) *(p+3)
B) *(p+4)
C) *p+3
D) *p+4
23. 设有定义int m, n, *p; 与语句“m=n;”等价的语句是()。
A) p=&n; m=*p;
B) p=&m; n=*p;
C) p=*n; m=*p;
D) p=*m; n=*p;
24. 设有定义int m=2,n=5,*p=&n;则语句“m=*p;”的结果是()。
A) 指针p指向m
B) 变量m的值变为5
C) 变量n的值变为2
D) 指针p指向m,同时变量m的值变为5
25. 设有说明int n; char str[80];与函数调用:n=hex2dec(str); 则函数hex2dec正确的函数说明应该是:()。
A) int hex2dec(char str[]);
B) void hex2dec(char str[]);
C) int hex2dec(char str);
D) void hex2dec(char str);
26. 设有定义char *p[]={"Shanghai","Beijing","Honkong"};则结果为'j'字符的表达式是()。
A) p[3][1]
B) *(p[1]+3)
C) *(p[3]+1)
D) *p[1]+3
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
//你只是交换了地址,并没有交换值,修改如下
#include<stdio.h>
void swap(int *a,int *b)
{
int t;
t=*a; *a=*b; *b=t;
}
main()
{
int i=3, j=5, *p=&i, *q=&j;
swap(p,q);
printf("%d %d\n",*p,*q);
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
void swap(int *a,int *b)
{
int t;
t=*a; *a=*b; *b=t;
}
应该是这样才行。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询