| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 733 人关注过本帖
标题:初学指针 改一下错
只看楼主 加入收藏
华子hear
Rank: 3Rank: 3
来 自:陕西西安
等 级:论坛游侠
帖 子:57
专家分:104
注 册:2013-6-3
结帖率:100%
收藏
已结贴  问题点数:5 回复次数:9 
初学指针 改一下错
#include<stdio.h>
int i,j,k,t;
main()
{
    int* p;
    int a[3];
    p=a;
    for(i=0;i<3;i++)
    scanf("%d",p++);
    p=a;
    for(i=0;i<2;i++)
    {
        k=i;
        for(j=i+1;j<3;j++)
            if(*(p+j)<*(p+i))k=j;
            if(k!=i)
            {t=*(p+i);*(p+i)=*(p+j);*(p+j)=t;}

    }
    for(i=0;i<3;i++)
        printf("%5d",a[i]);

}
2013-06-03 19:55
赵疯子
Rank: 8Rank: 8
来 自:dream
等 级:蝙蝠侠
威 望:2
帖 子:365
专家分:737
注 册:2013-5-5
收藏
得分:1 
这个是比大小的例子,貌似你定义指针错了 int空格*p;
2013-06-03 20:09
华子hear
Rank: 3Rank: 3
来 自:陕西西安
等 级:论坛游侠
帖 子:57
专家分:104
注 册:2013-6-3
收藏
得分:0 
回复 2楼 赵疯子
都对吗?我是看完全章后,随心所欲的写的。没有其他错误吧
2013-06-03 21:30
邓士林
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:淮河河畔
等 级:贵宾
威 望:61
帖 子:2392
专家分:13384
注 册:2013-3-3
收藏
得分:1 
上面的空格不是问题,可以那样定义,问题是你少个花括号,改正后如下:
for(j=i+1;j<3;j++)
         {if(*(p+j)<*(p+i))k=j;
             if(k!=i)
             {t=*(p+i);*(p+i)=*(p+j);*(p+j)=t;}
         }

Maybe
2013-06-03 21:45
火雨流星泪
Rank: 2
等 级:论坛游民
帖 子:65
专家分:78
注 册:2013-5-12
收藏
得分:1 
这是我的程序,把你的改了下,你看下
程序代码:
#include<stdio.h>
int i,j,k,t;
main()
{
    int  *p;
    int a[3];
    p=a;
    for(i=0;i<3;i++)
    scanf("%d",&a[i]);                            //我的理解指针是用来取值的,好像不太用于数据写入,我改了
    for(i=0;i<2;i++)
    {                                             //括号 
        k=i;
        for(j=i+1;j<3;j++)
        {
            k=i;                                  //逻辑错误,每次都把k=i
            if(*(p+j)<*(p+i))k=j;
            if(k!=i)
            {t=*(p+i);*(p+i)=*(p+j);*(p+j)=t;}
        }
    }
    for(i=0;i<3;i++)
        printf("%5d",a[i]);

} 
2013-06-03 21:52
q13678986740
Rank: 4
等 级:业余侠客
帖 子:114
专家分:245
注 册:2012-7-7
收藏
得分:1 
楼主的代码应该没问题,只是输入时用5楼的比较常规。楼主用的是选择排序法,没错不用改。
2013-06-03 23:23
嗜血老妖
Rank: 3Rank: 3
来 自:江西
等 级:论坛游侠
威 望:2
帖 子:102
专家分:163
注 册:2013-3-25
收藏
得分:1 

仗剑走天涯,网络论英雄。
2013-06-04 09:45
m05020502
Rank: 2
等 级:论坛游民
帖 子:20
专家分:48
注 册:2013-5-21
收藏
得分:1 
回复 6楼 q13678986740
没错??有吧
2013-06-04 09:56
杨瑞川
Rank: 2
等 级:论坛游民
帖 子:16
专家分:25
注 册:2013-5-19
收藏
得分:1 
没错误的
2013-06-04 11:16
笑傲
Rank: 8Rank: 8
来 自:迪拜
等 级:蝙蝠侠
威 望:5
帖 子:223
专家分:856
注 册:2013-3-9
收藏
得分:1 
除了版主说的,逻辑也有问题吧

练就一身本领,只为笑傲江湖!
2013-06-04 11:31
快速回复:初学指针 改一下错
数据加载中...
 
   



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

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