| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 365 人关注过本帖
标题:求助:指向指针的指针问题
只看楼主 加入收藏
cwde
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2011-3-31
结帖率:33.33%
收藏
 问题点数:0 回复次数:2 
求助:指向指针的指针问题
C语言指针问题:用指向指针的指针方法对n个整数排序并输出。要求将排序单独写成一个函数。
我的代码如下:
#include<stdio.h>
void str(int *a[5]);
int main(void)
{
    int a[5];
    int i;
    for(i=0;i<5;i++)
        scanf("%d",&a[i]);
    int *q[5];
        for(i=0;i<5;i++)
        q[i]=&a[i];
    str(q);
    for(i=0;i<5;i++)
        printf("%d",a[i]);}
void str(int *a[5])
{
    int **t,i,j,m;
    t=a;

       for(i=0;i<4;i++)
    {for(j=0;j<4-i;i++)
        
            if(**(t+j)>**(t+j+1))
            {m=**(t+j);
            **(t+j)=**(t+j+1);
            **(t+j+1)=m;}}}

总是排不了序,比如输入54321,输出45321,这是为什么呀?各位帮忙看看
搜索更多相关主题的帖子: C语言 
2011-04-30 14:24
cwde
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2011-3-31
收藏
得分:0 
没人会嘛?
2011-04-30 17:45
laoyang103
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:内蒙古包头
等 级:贵宾
威 望:19
帖 子:3082
专家分:11056
注 册:2010-5-22
收藏
得分:0 
程序代码:
#include<stdio.h>
void str(int *a[5]);
int main(void)
{
    int a[5]= {5,2,3,4,1};
    int i;
    int *q[5];
        for(i=0;i<5;i++)
        q[i]=&a[i];
    str(q);
    for(i=0;i<5;i++)
        printf("%d",a[i]);}
void str(int *a[5])
{
    int **t,i,j,m;
    t=a;

       for(i=0;i<4;i++)
       {
           for(j=0;j<4-i;j++)//这你也能写成 i++  佩服
       
            if(**(t+j)>**(t+j+1))
            {
                m=**(t+j);
                **(t+j)=**(t+j+1);
                **(t+j+1)=m;
            }
       }
}

                                         
===========深入<----------------->浅出============
2011-04-30 20:00
快速回复:求助:指向指针的指针问题
数据加载中...
 
   



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

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