求教一道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);
}

这个为什么没有进行数据交换呢?
展开
 我来答
竹理虎
2013-09-12 · TA获得超过2078个赞
知道小有建树答主
回答量:386
采纳率:12%
帮助的人:167万
展开全部
楼主你好

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
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
浮生lsh若梦
2013-09-12 · 超过10用户采纳过TA的回答
知道答主
回答量:68
采纳率:0%
帮助的人:30.2万
展开全部

改成这样就好了,划红线的地方要改

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
龍__鳳
2013-09-12 · TA获得超过2346个赞
知道小有建树答主
回答量:948
采纳率:0%
帮助的人:1395万
展开全部
//你只是交换了地址,并没有交换值,修改如下
#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);
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友a5eb3e1
2013-09-12 · TA获得超过4448个赞
知道大有可为答主
回答量:3486
采纳率:60%
帮助的人:2634万
展开全部
void swap(int *a,int *b)
{
int t;
t=*a; *a=*b; *b=t;
}

应该是这样才行。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式