您的位置:首页 > 其它

二维数组的行列求和以及最大差值

2016-04-14 12:44 169 查看
#include<stdio.h>

int cmp(void const *a,void const *b)

{

    return *(int*)a-*(int*)b;

}

int main()

{

    int a,b;

    while(1)

    {

        scanf("%d%d",&a,&b);

        if(a==0||b==0)

            return 0;

        int s[a][b],B[a][b],k,i,j,q,l=-1;

        k=a+b;

        int sum[k];

        for(i=0; i<a; i++)

        {

            for(j=0; j<b; j++)

            {

                scanf("%d",&s[i][j]);

                B[j][i]=s[i][j];

            }//行列翻转

        }

        for(i=0; i<a; i++)

        {

            q=0;

            for(j=0; j<b; j++)

            {

                q+=s[i][j];

            }

            l++;

            sum[l]=q;

        }

        for(i=0; i<a; i++)

        {

            q=0;

            for(j=0; j<b; j++)

            {

                q+=B[i][j];

            }

            l++;

            sum[l]=q;//列求和

        }

        qsort(sum,k,sizeof(sum[0]),cmp);//排序

        printf("%d\n",sum[k-1]-sum[0]);

    }

    return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: