| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 501 人关注过本帖
标题:指针问题,求教高手,
只看楼主 加入收藏
thanksky
Rank: 2
等 级:论坛游民
帖 子:11
专家分:10
注 册:2012-3-10
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:8 
指针问题,求教高手,
#include "stdio.h"
   main()
   {
    int i,j,,t,a[10]={0,21,54,33,84,5,98,17,96,19};
    int *p=a;
    /*for(i=0;i<10;i++)
    scanf("%d",&a[i]);*/
    printf("\n");
    for(j=0;j<9;j++)
        for(i=0;i=9-j;i++)
            if(a[i]>a[i+1])
            { t=a[i];a[i]=a[i+1];a[i+1]=t;}
      p=a;
    for(i=0;i<10;i++)
        printf("%d\n",*p);

   }
怎么个修改法,第一,程序编写错误,第二,想把它修改成用指针去排列大小。各位兄弟姐姐妹妹,有木有,帮忙的,?
搜索更多相关主题的帖子: include 
2012-03-14 14:15
VICTER
Rank: 2
等 级:论坛游民
帖 子:14
专家分:27
注 册:2011-12-27
收藏
得分:1 
void judge (int &p1, int &p2)
{
if (p1 > p2)
p1 = p1 + p2;
p = p1 - p2;
p1 = p1 - p2;
}
循环发送
2012-03-14 14:22
有容就大
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:东土大唐
等 级:版主
威 望:74
帖 子:9048
专家分:14309
注 册:2011-11-11
收藏
得分:1 
要这个?
程序代码:
#include <stdio.h>
main()
{
    int i,j,k,t,a[10]={0,21,54,33,84,5,98,17,96,19};
    int *p=a;
    /*for(i=0;i<10;i++)
    scanf("%d",&a[i]);*/
    printf("\n");
    for (i = 0; i < 9; i++)
    {
        k = i;
        for (j = i + 1; j < 10; j++)
            if (*(p + k) < *(p + j))
                k = j;
            t=*(p + k);*(p + k)=*(p + i);*(p + i)=t;
    }
    for(i=0;i<10;i++)
        printf("%d\t",*(p + i));
    printf("\n");
}


 

梅尚程荀
马谭杨奚







                                                       
2012-03-14 14:30
thanksky
Rank: 2
等 级:论坛游民
帖 子:11
专家分:10
注 册:2012-3-10
收藏
得分:0 
都不不对哎。。。。
2012-03-14 14:43
google天下
Rank: 2
等 级:论坛游民
帖 子:18
专家分:38
注 册:2012-3-14
收藏
得分:2 
程序代码:
#include <stdio.h>
int main()
{
    int i,j,t,a[10]={0,21,54,33,84,5,98,17,96,19};
    int *p=a;

    printf("\n");
    for(j=0;j<9;j++)
    {
        for(i=9;i>j;i--)
        {
            if(a[j]>a[i])
            { 
                t=a[j];
                a[j]=a[i];
                a[i]=t;
            }
        }
    }
     p=a;
    for(i=0;i<10;i++)
    {
        printf("%d\n",*(p+i));
    }
    return 0;
}


[ 本帖最后由 google天下 于 2012-3-14 14:52 编辑 ]
2012-03-14 14:50
lonmaor
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:郑州
等 级:版主
威 望:75
帖 子:2637
专家分:6423
注 册:2007-11-27
收藏
得分:2 
可以改的地方还有很多。
程序代码:
#include <stdio.h>
int main() {
    int i,j,t,a[10]={0,21,54,33,84,5,98,17,96,19};
    int *p=a;
    printf("\n");
    for (j=0;j<9;j++)
        for (i=j+1;i<=9;i++)
            if (a[j]>a[i])
                { t=a[i];a[i]=a[j];a[j]=t;}
    for (i=0;i<10;i++)
        printf("%d\n",*p++);
    return 0;
}


从不知道到知道,到知道自己不知道,成长的道路上脚步深深浅浅
2012-03-14 14:52
thanksky
Rank: 2
等 级:论坛游民
帖 子:11
专家分:10
注 册:2012-3-10
收藏
得分:0 
依然是运行不成功,那好吧,那就从新写好,题目是用指针方法对10个整数由大到小顺序排序。
2012-03-14 15:18
wsws23
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:105
专家分:107
注 册:2012-3-13
收藏
得分:2 
试试这个

#include <stdio.h>
   main()
   {
    int i,j,t,a[10]={0,21,54,33,84,5,98,17,96,19};
    int *p;
    /*for(i=0;i<10;i++)
    scanf("%d",&a[i]);*/
    printf("\n");
    for(i=0;i<=9;i++)
    {
        for(j=0;j<9-i;j++)
        {
            if(a[i]>a[i+j+1])
            {
                t=a[i];
                a[i]=a[i+j+1];
                a[i+j+1]=t;
            }
        }
    }
            p=a;
        for(i=0;i<10;i++)
        printf("%d\n",*(p+i));
   }
2012-03-14 16:16
xep007
Rank: 2
等 级:论坛游民
帖 子:5
专家分:12
注 册:2010-5-29
收藏
得分:2 
#include <stdio.h>
int main(void)
{
        int i, j, t;
        int a[10] = {0, 21, 54, 33, 84, 5, 98, 17, 96, 19};
        int *p = a;
        for (i = 0; i < 9; ++i)
                for (j = i+ 1; j < 10 ; ++j)
                        if (*(p+i) > *(p+j)) {t = *(p+i); *(p+i) = *(p+j); *(p+j) = t;}
        p = a;
        for (i = 0; i < 10; ++i)
                printf ("%d\n", *p++);
      
         return 0;
}
2012-03-14 19:26
快速回复:指针问题,求教高手,
数据加载中...
 
   



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

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