zoukankan      html  css  js  c++  java
  • 二维矩阵的算法

    源程序:

    /*
    //1、二维矩阵原样输出
    //2、转90度输出
    //3、每行最后增加一个元素,变成正方形矩阵输出
    //4、求矩阵中的最大值和最小值
    //5、求主对角线和副对角线之和
    */
    #include <stdio.h>
    int main()
    {
    int Numbers[4][3]={1,1,1,
    2,4,8,
    3,9,27,
    4,16,64};
    int Num[4][4]={1,1,1,0,
    2,4,8,0,
    3,9,27,0,
    4,16,64,0,};
    int i,j; //i和j是循环变量,i表示行,j表示列
    printf("原二维数组如下: ");
    for(i=0;i<4;i++)
    {
    for(j=0;j<3;j++)
    {
    printf("%3d",Numbers[i][j]);
    }
    printf(" "); //每输出一行,回车换行
    }
    printf(" ");
    printf("转置以后的二维数组: ");
    for(i=0;i<3;i++)
    {
    for(j=0;j<4;j++)
    {
    printf("%3d",Numbers[j][i]);
    }
    printf(" "); //每输出一行,回车换行
    }
    printf(" ");
    //在二维数组中输出最大值和最小值
    int max,min;
    max=min=Numbers[0][0];
    for(i=0;i<4;i++)
    {
    for(j=0;j<3;j++)
    {
    if(Numbers[i][j]>max)
    max=Numbers[i][j];
    if(Numbers[i][j]<min)
    min=Numbers[i][j];
    }
    //printf(" "); //每输出一行,回车换行
    }
    printf("矩阵中的最大值为:%d ,最小值为:%d ",max,min);
    //二维数组每行最后加一个元素
    printf(" 二维矩阵每行最后增加一个元素8 ");
    int add[4]={8,8,8,8};
    for(i=0;i<4;i++)
    {
    Num[i][3]=add[i];
    }
    for(i=0;i<4;i++)
    {
    for(j=0;j<4;j++)
    {
    printf("%3d",Num[i][j]);
    }
    printf(" ");
    }
    //二维矩阵对角线之和
    printf(" ");
    int sum=0;
    for(i=0;i<4;i++)
    {
    sum=sum+Num[i][i];
    }
    printf("主对角线之和为:%d ",sum);

    //副对角线之和
    int sum1=0;
    for(i=0;i<4;i++)
    {
    sum1=sum1+Num[i][3-i];
    }
    // Num[0][3]; //分析的过程
    // Num[1][2];
    // Num[2][1];
    // Num[3][0];
    printf("副对角线之和为:%d ",sum1);
    return 1;
    }

     运行结果:

  • 相关阅读:
    Lambert 光照模型
    向前兼容和向后兼容
    eclipse如何设置时常挂提示
    eclipse首次使用的基本设置
    eclipse如何设置UTF-8
    CSS中 清除浮动解决“包含问题”
    CSS一些设置用法
    浅谈CSS布局
    No.4小白的HTML+CSS心得篇
    No.3小白的HTML+CSS心得篇
  • 原文地址:https://www.cnblogs.com/duanqibo/p/14127937.html
Copyright © 2011-2022 走看看