【C编程】对一个二维数组中的数据排序
来源:互联网 发布:看门狗a卡优化 编辑:程序博客网 时间:2024/05/04 22:05
/*对一个二维数组中的数据排序,方法如下:将整个数组中值最小的元素所在行调整为数组第一行,将除第一行外的行中最小元素所在行调整为第2行,将除第1,2行外的行中最小值元素所在行调整为第3行,以此类推*/#include <stdio.h>#define N 10void change(int (*a)[N],int row,int line){int m = 0; //记录最小值所在的行的下标int i = 0; int j = 0;int temp = 0;int k = 0;int min_a = a[0][0]; //min_a记录最小的元素while(k < row-1){for( i = k; i < row; i++ ){for(j = 0;j < line;j++){if(a[i][j] < min_a){min_a = a[i][j];m = i;}}}if(m == k){k++;}else{for(j = 0;j < line;j++){temp = a[k][j];a[k][j] = a[m][j];a[m][j] = temp;}k++;}min_a = a[k][0];}for(i = 0;i < row;i++){for(j = 0;j < line;j++){printf("%5d",a[i][j]);}printf("\n");}}int main(){int row = 0; //输入行int line = 0; //输入列int a[N][N] = {0};int i = 0;int j = 0;printf("please input rows you want:\n");scanf("%d",&row);printf("please input line you want:\n");scanf("%d",&line);printf("please input array:\n");for(i = 0;i < row;i++){for(j = 0;j < line;j++){scanf("%d",&a[i][j]);}}printf("the result is:\n");change(a,row,line);/*for(i = 0;i < row;i++){for(j = 0;j < line;j++){printf("%5d",a[i][j]);}printf("\n");}*/return 0;}
0 0
- 【C编程】对一个二维数组中的数据排序
- 对一个二维数组中的数据排序
- 对一个二维数组进行冒排序
- 对php中的二维数组进行排序
- 对二维数组排序
- C 二维数组排序
- 用一个函数对二维数组进行排序
- 如何用C++中的STL对二维数组进行排序
- 对php二维数组排序
- 对一个数组中的随机数进行排序
- 对一个二维数组中的某个值进行降序排行
- 一个二维数组的排序
- 一个二维数组的排序
- C二维数组冒泡排序
- C语言 二维数组排序
- 【c语言】二维数组中的查找,杨氏矩阵在一个二维数组中,每行都按照从左到右的递增的顺序排序,输入这样的一个数组和一个数,判断数组中是否包含这个数
- C语言实现对数组中的数据进行冒泡排序(从小到大)
- C语言中的二维数组
- Qt Creator 你必须要掌握的快捷操作
- 【C编程】找出7个默森尼数。法国数学家默森尼曾提出下列公式:Mp=2^p-1。当p是素数并且Mp也是素数时,称Mp为默森尼数,
- 数据结构与算法分析 练习1.13 设计一个类模板Collection
- 关于环境变量
- ios UIWebView内跳转,html5的 token失效解决办法
- 【C编程】对一个二维数组中的数据排序
- SIG_CHLD信号
- linux 使用问题整理
- 字节、字、bit、byte的关系
- 实验三—Huffman编解码
- 决策树、随机森林简单原理和实现
- 【Cubietruck】Qt5.8.0 x64、x86、armhf三个版本的编译安装
- Linux CentOS 教程
- C++小型公司员工管理系统