永发信息网

C语言编程:将矩阵中的元素由小到大排列后输出谢谢亲们,求助

答案:2  悬赏:60  手机版
解决时间 2021-04-02 19:21
C语言编程:将矩阵中的元素由小到大排列后输出谢谢亲们,求助
最佳答案
#include "stdio.h"
#include "stdlib.h"
#define N 8
#define M 10
int main(void){
    int m[N][M],i,j,k,t,*p,l;
    printf("Before ordering:
");
    for(i=0;i        for(j=0;j        printf("
");
    }
    printf("
After ordering:
");
    for(p=(int *)m,t=N*M,l=i=0;i        for(k=i,j=k+1;j            if(p[k]>p[j])
                k=j;
        if(k-i)
            p[k]^=p[i],p[i]^=p[k],p[k]^=p[i];
        printf(++l%M ? "%4d" : "%4d
",p[i]);
    }
    return 0;
}追答
追问:谢谢你p[k]^=p[i],p[i]^=p[k],p[k]^=p[i]是什么意思(*^ω^*)
追答:^是异或的意思,即前后两个整数的对应二进制位相同为0,相异为1。在这里p[k]^=p[i],p[i]^=p[k],p[k]^=p[i];的作用与j=p[k],p[k]=p[i],p[i]=j;作用一样,只是前者效率高一些而已。
全部回答
矩阵是什么样的矩阵,给个例子追答
追问:老师没说具体的矩阵应该自己随便给一个就可以吧
追答:#include <stdio.h>
#include<stdlib.h>
void sort(int array[], int count) {
    int b;
    for (int i = 0; i < count - 1; i++) {
        for (int j = 0; j < count - 1 - i; j++) {
            if (array[j] >= array[j + 1]) {
                b = array[j];
                array[j] = array[j + 1];
                array[j + 1] = b;
            }
        }
    }
}
int main() {
    int a[5][10] = {{0}};
    printf("排序前: ");
    for (int i = 0; i < 5; i++) {
        for (int j = 0; j < 10; j++) {
            a[i][j] = rand() % 100 + 1;
            printf("%3d ", a[i][j]);
        }
        printf(" ");
    }
    printf("排序后: ");
    for ( int i = 0; i < 5; i++) {
        sort(a[i], 10);
        for (int j = 0; j < 10; j++) {
            printf("%3d ", a[i][j]);
        }
        printf(" ");
    }
    
    return 0;
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
赵将廉颇之后嗣廉范 译文
working hard is the key to achieving succe
第一二三人称叙述视角的好处
毛腈面料有哪些特点?
征集向女生表白的方式与形式~~求感动!求记忆
山竹果肉为什么变实心硬的l了 不是应该是白色
刚上初一,想家怎么办
“先时国家始制九品,各使诸郡选置中正,差叙
请问防水长筒靴和长筒雨靴有什么区别?
民间道家宗教的没落原因是什么
带锥度的内孔如何测量?锥度已知,怎么测内孔
有一块六棱角透明的石头是什么石头?
银行理财和储蓄有什么区别
现在学vb还有用吗?
帮忙优化mysql 的sql语句
推荐资讯
李冰清 好看的签名设计
第II卷(非选择题,共45分)第四部分:书面表
烟台曹家庄驾校怎样?
2012年伦敦奥运会羽毛球男单决赛数据统计 详
我总是遇到人渣 然后无知爱上人渣 然后被人渣
爱是创作的什么
hive为什么与hbase整合
3.9除以0.65怎么算
农场今年收小麦400千克对吗
辽宁兴城农村商业银行(南关分理处)地址有知道
佩服自己,自从当了妈,真是什么恶心事都做了
青稞和玉米营养价值区别
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?