黑马程序员技术交流社区

标题: 学习上有太多不懂的题目了,这道题怎么做 [打印本页]

作者: linguoqun    时间: 2016-8-4 00:38
标题: 学习上有太多不懂的题目了,这道题怎么做
1.利用指针的知识,写一个函数,实现将一个整型二维数组内的所有元素,进行从大到小的排序
求大神指点一下解题思路,最好附上实现代码。谢谢!


作者: wc88212    时间: 2016-8-4 19:59
这么容易的题,自己想!
作者: liuxiaojesse    时间: 2016-8-4 21:17
[C] 纯文本查看 复制代码
int main(int argc, const char * argv[])
{

    int arr[6] = {1,23,44,56,78,0};
    int len =sizeof(arr)/sizeof(arr[0]);
    for (int i = 0; i < len; i++)
    {
        for (int j = 0; j < len - i -1; j++)
        {
            if(arr[j]<arr[j+1])
            {
                int temp = arr[j];
                arr[j] = arr[j+1];
                arr[j+1]=temp;
            }
        }
    }
    for (int i = 0; i < len; i++)
    {
        printf("%d\n",arr);
    }
    return 0;
}

作者: linguoqun    时间: 2016-8-4 22:40
liuxiaojesse 发表于 2016-8-4 21:17
[mw_shl_code=c,true]int main(int argc, const char * argv[])
{

大哥,是二维数组,不是一维数组。
作者: anan安    时间: 2016-8-4 23:37
冒泡 选择 都可以这是要背也要背住的

作者: a2860608    时间: 2016-8-5 00:17
[C] 纯文本查看 复制代码
    int arr[2][3] = {1,23,44,56,78,0};
    int* arrP = (int*)&arr;
    int len =sizeof(arr)/sizeof(int);
    int temp;
    for (int i = 0; i < len-1; i++)
    {
        for (int j = 0; j < len - i -1; j++)
        {
            if( arrP[j] > arrP[j+1] )
            {
                temp = arrP[j];
                arrP[j] = arrP[j+1];
                arrP[j+1] = temp;
            }
        }
    }
    for (int i = 0; i < len; i++)
    {

        printf("%d\n",arrP);
    }

作者: 悄然林静    时间: 2016-8-5 19:41
问度娘啊




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2