| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1409 人关注过本帖
标题:指针把ab互换 怎么不对啊
只看楼主 加入收藏
han8716
Rank: 1
等 级:新手上路
帖 子:76
专家分:3
注 册:2012-2-12
结帖率:90%
收藏
已结贴  问题点数:20 回复次数:15 
指针把ab互换 怎么不对啊
#include<stdio.h>
main()
{
    int t,*pa,a,*pb,b;
    pa=&a,pb=&b;
    printf("请输入a,b:\n");
    scanf("&d&d",pa,pb);
    t=*pa;
    *pa=*pb;
    *pb=t;
    printf("%d  %d\n",a,b);
}
2012-04-01 18:22
han8716
Rank: 1
等 级:新手上路
帖 子:76
专家分:3
注 册:2012-2-12
收藏
得分:0 
编的没错 但是运行结果不对 求解
2012-04-01 18:27
laoyang103
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:内蒙古包头
等 级:贵宾
威 望:19
帖 子:3082
专家分:11056
注 册:2010-5-22
收藏
得分:5 
试试这两个
a ^= b;b = a^b;a ^= b;   
a -= b; b += a; a = b-a;

                                         
===========深入<----------------->浅出============
2012-04-01 18:29
ouyangouyang
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:273
专家分:579
注 册:2009-10-8
收藏
得分:5 
#include<stdio.h>
main()
{
    int t,*pa,a,*pb,b;
    pa=&a,pb=&b;
    printf("请输入a,b:\n");
    scanf("&d&d",pa,pb);//这是哪个老师教你的??
    t=*pa;
    *pa=*pb;
    *pb=t;
    printf("%d  %d\n",a,b);
}

多少恨, 昨夜梦魂中。 还似旧时游上苑, 车如流水马如龙; 花月正春风!
2012-04-01 18:37
枫叶照耀
Rank: 1
等 级:新手上路
帖 子:5
专家分:5
注 册:2012-4-1
收藏
得分:5 
这么写吧 你那个输入语句有问题
#include<stdio.h>
int main()
{
    int t,a,b;
    int * pa,pb;
    printf("请输入a,b:\n");
    scanf("%d%d",a,b);
    printf("%d  %d\n",a,b);//交换前
  pa=&a,pb=&b;
    t=*pa;
    *pa=*pb;
    *pb=t;
    printf("%d  %d\n",a,b);//交换后
    return 0;
}
2012-04-01 19:48
han8716
Rank: 1
等 级:新手上路
帖 子:76
专家分:3
注 册:2012-2-12
收藏
得分:0 
回复 4楼 ouyangouyang
pa=&a啊 怎么不对? 求赐教
2012-04-01 19:50
han8716
Rank: 1
等 级:新手上路
帖 子:76
专家分:3
注 册:2012-2-12
收藏
得分:0 
回复 5楼 枫叶照耀
你那种方法我明白 但是我想明白我这种为什么打印出来结果为什么不对
2012-04-01 19:51
枫叶照耀
Rank: 1
等 级:新手上路
帖 子:5
专家分:5
注 册:2012-4-1
收藏
得分:0 
回复 7楼 han8716
你对a取取地址的时候,你有没有发现你没有初始化 就直接 取地址。这样你然pa指向哪?你要先给他们初始化
2012-04-01 19:56
embed_xuel
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:58
帖 子:3845
专家分:11385
注 册:2011-9-13
收藏
得分:5 
scanf("&d&d",pa,pb);
这句应该是
   scanf("%d%d",pa,pb);

总有那身价贱的人给作业贴回复完整的代码
2012-04-01 20:04
天涯漫
Rank: 2
等 级:论坛游民
帖 子:31
专家分:57
注 册:2012-3-8
收藏
得分:0 
建议你按书上的程序抄写几个代码程序,你的低级错误太多了,标点之类的。。。看看书上是怎么用的
#include<stdio.h>
main()
{
    int t,*pa,a,*pb,b;
    pa=&a;
    pb=&b;
    printf("请输入a,b:\n");
    scanf("%d%d",&a,&b);
    t=*pa;
    *pa=*pb;
    *pb=t;
    printf("%d  %d\n",a,b);
}
2012-04-01 20:18
快速回复:指针把ab互换 怎么不对啊
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.039311 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved