标题:求助!用自定义函数为什么不能排序?
只看楼主
zvnzer
Rank: 1
等 级:新手上路
帖 子:12
专家分:1
注 册:2009-12-27
结帖率:100%
已结贴  问题点数:10 回复次数:8 
求助!用自定义函数为什么不能排序?
程序代码:
# include <stdio.h>
void px(int x,int y) /*两个数排序*/
{
    int t;
    if (x>y)
    {
        t=x;
        x=y;
        y=t;
    }
}             /*用这个函数为什么不排序?*/
void main()
{
    int a[11]={0},i,j,t;
    for (i=1;i<=10;i++)
        a[i]=11-i;
    for (j=1;j<=9;j++)
        for (i=1;i<=10-j;i++)
        px (a[i],a[i+1]);
    for (i=1;i<=10;i++)
    printf("%3d",a[i]);
    getch();
}
用这个函数为什么不能排序啊??起泡法。我知道不用函数也能实现,只是想知道怎么错了

搜索更多相关主题的帖子: 为什么 函数 定义 排序 
2009-12-29 10:59
lijm1989
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:珠海
等 级:贵宾
威 望:12
帖 子:675
专家分:2844
注 册:2009-10-14
得分:2 
去找下函数参数传递的资料看看。。你这样的传递只能传值,不能改变值。。要借助指针才行。。去看看先。。
2009-12-29 11:10
fqtb16
Rank: 7Rank: 7Rank: 7
来 自:上海
等 级:黑侠
帖 子:96
专家分:504
注 册:2009-12-28
得分:2 
单相传送的值传递方式,形参值的改变不能使实参的值随之改变

爱拼才会赢
2009-12-29 12:25
wufei1989121
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:39
专家分:113
注 册:2009-11-13
得分:0 
要用到后面学的 指针
2009-12-29 12:28
xu362726904
Rank: 6Rank: 6
等 级:侠之大者
帖 子:160
专家分:471
注 册:2009-6-18
得分:0 
用指针能行
2009-12-29 12:38
dancing1wolv
Rank: 2
来 自:中国
等 级:论坛游民
帖 子:36
专家分:78
注 册:2009-12-25
得分:4 
这样试试:
# include <stdio.h>
void px(int *x,int *y) /*两个数排序*/
{
    int t;
    if (*x>*y)
    {
        t=*x;
        *x=*y;
        *y=t;
    }               //指针多看看,多运行几遍,懂还是可以的
}             /*指针可以排序?*/
void main()
{
    int a[11]={0},i,j,t; //t没有用上
    for (i=1;i<=10;i++)
        a[i]=11-i;
    for (i=1;i<=10;i++)
    printf("%3d",a[i]);
    for (j=1;j<=9;j++)
        for (i=1;i<=10-j;i++)
        px (&a[i],&a[i+1]);
    for (i=1;i<=10;i++)
    printf("%3d",a[i]);
    getch(); //这句话是干嘛的??
}

相信自己,每天进步一点点,C语言,you can do it 。
2009-12-29 13:38
liangwenbc
Rank: 3Rank: 3
来 自:广州
等 级:论坛游侠
帖 子:168
专家分:174
注 册:2008-6-11
得分:2 
你去把值传递和地址传递弄清楚你就知道怎么回事了

qq7434391
2009-12-29 14:03
心若止水
Rank: 1
等 级:新手上路
帖 子:89
专家分:0
注 册:2008-4-9
得分:0 
undefined
2009-12-29 15:23
longlong89
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:广州
等 级:小飞侠
威 望:6
帖 子:1043
专家分:2754
注 册:2009-8-18
得分:0 
你长的不够帅。

想象力征服世界
2009-12-29 19:12



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-294555-1-1.html




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

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