• 50.【动态二维数组的运用】


    84d6627292a642f194a397099283742a.png

     ==============

    adec2de8a648450f94025a88c125ffde.png

     

    【列数只能手动输入,行数可以动态】

    #include

    using namespace std;

    int main()

    {

     int m, n;

     cout << "请输入行数为:" << endl;

     cin >> m;

     cout << "请输入列数为:" << endl;

     cin >> n;

     int(*p)[n]; // 列数不能动态输入

     p = new int[m][n];

     for (int i = 0; i < 5; i++)

     {

      for (int j = 0; j < 3; j++)

      {

       cout << "请输入p[" << i << "][" << j << "]的值" << endl;

       cin >> p[i][j];

      }

     }

     cout << "输出为:" << endl;

     for (int i = 0; i < 5; i++)

     {

      for (int j = 0; j < 3; j++)

      {

       cout<< p[i][j]<<" ";

      }

     }

     return 0;

    }

    3713eef8bd1a4b00b85251e694171549.png

     【方法2手动输入列数可以运行】

    #include

    using namespace std;

    int main()

    {

     int m, n;

     cout << "请输入行数为:" << endl;

     cin >> m;

     

     int(*p)[3];              

     p = new int[m][3];

     for (int i = 0; i < m; i++)

     {

      for (int j = 0; j < 3; j++)

      {

       cout << "请输入p[" << i << "][" << j << "]的值" << endl;

       cin >> p[i][j];

      }

     }

     cout << "输出为:" << endl;

     for (int i = 0; i < 5; i++)

     {

      for (int j = 0; j < 3; j++)

      {

       cout<< p[i][j]<<" ";

      }

     }

     return 0;

    }

    e5c9e0dc8cdf4531aa20666321a752ec.png

     

     53014d21d9294199bccd985249e4ec16.png

     

     【方法1】

    #include
    using namespace std;
    int main()
    {
        int m, n;
        cout << "请输入行数为:" << endl;
        cin >> m;
        cout << "请输入列数:" << endl;
        cin >> n;
        int**p;                 // 
        p = new int*[n];
        for (int i = 0; i < n; i++)
        {
            p[i] = new int[n];
        }
        for (int i = 0; i < n; i++)
        {
            for (int j = 0; j < n; j++)
            {
                cin >> p[i][j];
            }
        }
        cout << "输出为:" << endl;
        for (int i = 0; i < n; i++)
        {
            for (int j = 0; j < n; j++)
            {
                cout<< p[i][j]<<" ";
            }
        }
        delete[]p;
        return 0;
    }

    7d14897a10a446d09995fb755b794be9.png

     

    【方法2基本格式】

    int (*p)[列]

    p=new int[行][列]

    【方法1基本格式】

    int **p;

    p=new int*[列]

    for(int i=0;i<列;i++)

    {

        p[i]=new int [列]

    }

    【总结】

    f3f5856b66e441119ad1fb987ca91a0d.png

     

     

  • 相关阅读:
    python基于PHP+MySQL的大学生健康管理系统
    记一次 .NET 某仪器测量系统 CPU爆高分析
    第五章单元测试
    挖金客深交所上市:市值28亿 李征曾遭其妻张宏离婚诉讼
    cesium图标漂移分析与解决
    大数据下一代变革之必研究数据湖技术Hudi原理实战双管齐下-中
    40.组合总和 II
    统信UOS Linux操作系统下怎么删除某个程序在开始菜单或桌面的快捷方式
    基于java+springmvc+mybatis+vue+mysql的医院设备管理系统
    浅析MVC、MVP、MVVM 框架实现
  • 原文地址:https://blog.csdn.net/qq_69683957/article/details/126093934