A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© wc88212 中级黑马   /  2016-7-27 20:57  /  1609 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

使用方法为冒泡
[C] 纯文本查看 复制代码
#include <stdio.h>
void bubbleByArr(int rows,int cols,int arr[][cols])
{
    int i,j,temp=0;
    //遍历这个二维数组,为其赋值
    for(i=0; i<rows; i++)
        for(j=0; j<cols; j++)
        {
            printf("请输入:\n");
            scanf("%d", &arr[i][j]);
        }
    //冒泡排序
    for(i=0;i<cols*rows-1;i++)
    {
        for(j=0;j<rows*cols-i-1;j++)
        {
            //j/cols代表二维数组的元素位于第几个排
            //j%cols代表二维数组的元素位于当前排的哪一列
            if(arr[j/cols][j%cols]<arr[(j+1)/cols][(j+1)%cols])
            {
                temp = arr[j/cols][j%cols];
                arr[j/cols][j%cols] = arr[(j+1)/cols][(j+1)%cols];
                arr[(j+1)/cols][(j+1)%cols] = temp;
            }
        }
    }
    for(i=0;i<rows;i++)
    {
        for(j=0;j<cols;j++)
        {
            printf("arr[%d][%d] = %d\n",i,j,arr[i][j]);
        }
    }
}

6 个回复

倒序浏览
用指针简单很多
回复 使用道具 举报
用指针简单
回复 使用道具 举报
加油不错不错!!
回复 使用道具 举报
加油!用指针要更简单一些!
回复 使用道具 举报
指针......
回复 使用道具 举报
踏实复习
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马