精华内容
下载资源
问答
  • #include<stdio.h> void main() { int a[2][3] = { {1,2,3},{4,5,6} }; for (int i = 0; i < 3; i++) { printf("%d ", a[1][i]); } }
    #include<stdio.h>
    
    void main() {
    	int a[2][3] = { {1,2,3},{4,5,6} };
    
    	for (int i = 0; i < 3; i++)
    	{
    		printf("%d ", a[1][i]);
    	}
    }
    

    在这里插入图片描述

    展开全文
  • 二维数组和二维字符数组 二维数组 首先,我们来介绍一下二维数组二维数组:int a[5][10]是内含50个int类型值的数组。 可以想象一下:可以是一个510列的数据表。 输入某一个数的行数和列数,就可以查找这个元素...

    二维数组和二维字符数组

    二维数组

    首先,我们来介绍一下二维数组。
    二维数组:int a[5][10]是内含50个int类型值的数组。
    可以想象一下:可以是一个5行10列的数据表。

    输入某一个数的行数和列数,就可以查找这个元素的数值。

    下面我们用一个小例子解释一下。

    
    int main()
    {
        int a[2][10];
        int b = 0;
        for (int i = 0; i < 2; i++)
        {
            for (int j = 0; j < 10; j++)
            {
                a[i][j] = b;
                b++;
            }
        }
        printf("%d\n",a[1][9]);
        return 0;
    }
    

    这样我们就把0 - 19这20个数保存在这个二维数组里面,最后我们输出19这个元素。

    话不多说,看看这道题来记忆一下二维数组叭。

    题目描述

    假设一个班有n(n<=50)个学生,每人考m(m<=5)门课,求每个学生的平均成绩和每门课的平均成绩,并输出各科成绩均大于等于平均成绩的学生数量。

    输入

    输入数据有多个测试实例,每个测试实例的第一行包括两个整数n和m,分别表示学生数和课程数。然后是n行数据,每行包括m个整数(即:考试分数)。

    输出

    对于每个测试实例,输出3行数据,第一行包含n个数据,表示n个学生的平均成绩,结果保留两位小数;第二行包含m个数据,表示m门课的平均成绩,结果保留两位小数;第三行是一个整数,表示该班级中各科成绩均大于等于平均成绩的学生数量。
    每个测试实例后面跟一个空行。

    样例输入:
    2 2
    5 10
    10 20
    样例输出:
    7.50 15.00
    7.50 15.00
    1
    分析:对于这道题我们可以利用二维数组来解题,先建立一个二维数组行可以看作学生,而列我们可以理解成该学生每科的成绩;
    可看看具体的代码实现:

    
    int main()
    {
        int n,m;
        int a[60][10];
        int b[10];
    
        while (scanf("%d%d",&n,&m) != EOF)
        {
            for (int i = 0; i < n; i++)
            {
                for (int j = 0; j < m; j++)
                {
                    scanf("%d",&a[i][j]);
                }
            }
            for (int i = 0; i < n; i++)
            {
                double sum1 = 0;
                for (int j = 0; j < m; j++)
                {
                    sum1 = sum1 + a[i][j];
                }
                printf("%.2f ",sum1 / m);//输出n个学生的平均成绩
            }
            printf("\n");
            for (int j = 0; j < m; j++)
            {
                double sum2 = 0;
                for (int i = 0; i < n; i++)
                {
                    sum2 = sum2 + a[i][j];
                }
                b[j] = sum2 / n;//保存这m科的平均分
                printf("%.2f ",sum2 / n);//printf出每科的平均分
            }
            printf("\n");
            int d = 0;
            for (int j = 0; j < n; j++)
            {
                int c = 0;
                for (int i = 0; i < m; i++)
                {
                    if (a[j][i] >= b[i])//每个学生每一科的成绩与平均父比较,大于等于c加一
                        c++;
                }
                if (c == m)
                    d++;
            }
            printf("%d\n",d);//输出满足条件的学生数
        }
        return 0;
    }
    

    下面我们说一下二维字符数组叭。

    二维字符数组

    其实与二维数组是相同的,但是也有一点小小的区别。

    二维字符数组str[i][j] 可以和二维数组一样理解,只不过是是一个i行j列的字符表,但是不同的是输出的可以是字符,也可以是字符串。

    下面来具体说说一下这个。

    输出字符串
    看看这到题吧!

    题目描述
    有N个学生,每个学生的数据包括学号、姓名、3门课的成绩,从键盘输入N个学生的数据,要求打印出3门课的总平均成绩,以及最高分的学生的数据(包括学号、姓名、3门课成绩)

    (注意:学号可以是字符串,其他数据都是整数或结果保留整数)

    输入
    学生数量N占一行每个学生的学号、姓名、三科成绩占一行,空格分开。
    输出
    各门课的平均成绩 最高分的学生的数据(包括学号、姓名、3门课成绩)
    样例输入 Copy
    2
    1 blue 90 80 70
    b clan 80 70 60
    样例输出 Copy
    85 75 65
    1 blue 90 80 70

    
    int main()
    {
       int n,sum1,sum2,sum3,sum;
       scanf("%d",&n);
       char a[n][10000];//存放学号
       char b[n][10000];//存放姓名
       int c[n][3];//存放每个学生的成绩
       int d[n];
       int t = 0;
        getchar();
       for (int i = 0; i < n; i++)
       {
           scanf("%s",&a[i]);
           scanf("%s",&b[i]);
           sum = 0;
           for (int j = 0; j < 3; j++)
           {
               scanf("%d", &c[i][j]);
               sum = sum + c[i][j];
           }
           d[t] = sum;
           t++;
       }
       sum1 = 0;
       sum2 = 0;
       sum3 = 0;
       for (int i = 0; i < n; i++)
           sum1 = sum1 + c[i][0];
        for (int i = 0; i < n; i++)
           sum2 = sum2 + c[i][1];
        for (int i = 0; i < n; i++)
           sum3 = sum3 + c[i][2];
       printf("%d %d %d\n",sum1 / n,sum2 / n, sum3 / n);//求各科的平均分
    
       int max = 0;
       for (int k =0; k < t; k++)
       {
           if (d[max] < d[k])
                max = k;
       }
       printf("%s ",a[max]);//输出字符串“学号”
       printf("%s ",b[max]);//输出字符串“姓名”
       printf("%d %d %d\n",c[max][0],c[max][1],c[max][2]);//输出这个学生的各科的成绩
       return 0;
    }
    

    输出字符

    
    int main()
    {
        char str[3][10];
        for (int i = 0; i < 3; i++)
        {
            scanf("%s",&str[i]);
        }
        printf("%c\n",str[1][0]);
        return 0;
    }
    

    空格代表开始另一个字符串了。
    比如输入:I Like Acm
    输出:L

    大家可以在课外书或者是网站上查查更多。
    欢迎一起讨论哦!

    展开全文
  • 二维数组如何向函数传递某一行的元素? 在使用二维数组的时候我们有哪些注意事项,如何节省系统的存储空间? 在我们正式开始之前,建议大家可以先回顾以下我们一维数组的相关知识。 1. 二维...

    0. 引言

    在学习二维数组的时候,会自然产生以下几个问题,但是介于目前没有对以下几个问题有详细的讲解,那今天我来对下面几个自然提出的问题做一下详解:

    • 二维数组如何进行声明?
    • 二维数组如何作为指针传递到函数形参中?
    • 二维数组如何向函数传递某一行的元素?
    • 在使用二维数组的时候我们有哪些注意事项,如何节省系统的存储空间?

    在我们正式开始之前,建议大家可以先回顾以下我们一维数组的相关知识

    1. 二维数组的声明

    在此处,我们不阐述究竟二维数组其存储方式及表示意义,我们所述的是二维数组的用法。

    那么二维数组究竟该如何声明呢?笔者为你整理了一下:

    • 我们可以直接声明二维数组的row和column,并以初始化。(值得注意的是,用{}赋值仅仅只能在初始化阶段使用)
    int a[4][5]={{0,0,0,0,0},
    			 {1,1,1,1,1},
    			 {2,2,2,2,2},
    			 {3,3,3,3,3}};		
    
    • 或者我们也可以声明后不对其进行初始化定义:
    int a[4][5];
    
    • 在更不确定的情况下,我们可以省略row的赋值:
    int a[][5];
    

    但是必须提醒的是,省略column的值是不对的!

    2. 指向二维数组的指针

    我们如何声明一个指针变量p指向我们上述的二维数组a呢?
    在此之前,我们需要详细讲解一下极易混淆的两句话:

    int (*p)[5];
    int *p[4];
    

    Command 1: int (*p)[5];

    先看第一句,我们知道,下标引用的优先级要高于间接引用,即[]的优先级要高于*,但是由于括号的存在,首先执行的还是间接访问。所以p是一个指针,但它指向什么呢?
    接下来执行的是下标引用,所以p指向某种类型的数组。
    虽然声明并没有直接告诉你p是什么,但是推他它的类型并不困难----当我们对他执行间接访问操作时,我们得到的是个数组,对该数组进行下标引用操作得到的是一个整型值,所以p是一个指向整型数组的指针。
    在声明中加上初始化后是下面这个样子:

    int a[4][5];
    int (*p)[5] = a;		//一定要理解,5是二维数组a的column
    

    它使p指向a的第一行。
    p是一个指向拥有5个整型元素的指针。不妨我们实际运行一下程序,看下程序运行会出现什么样的结果:

    #include <stdio.h>
    void main()
    {
    	int a[4][5]={{0,0,0,0,0},
    				 {1,1,1,1,1},
    				 {2,2,2,2,2},
    				 {3,3,3,3,3}};	
        int (*p)[5];
        p = a;
    }
    

    我们利用CLion的监控变量,看看这个时候p到底代表了什么:

    显然,我们验证了这句话:p是一个指向拥有5个整型元素的指针
    而当你把p与一个整数相加时,该整数值首先根据5个整型值的长度进行调整,然后再执行加法。所以我们可以使用这个指针一行一行地在a中进行移动,比如:

    #include <stdio.h>
    void main()
    {
    	int a[4][5]={{0,0,0,0,0},
    				 {1,1,1,1,1},
    				 {2,2,2,2,2},
    				 {3,3,3,3,3}};	
        int (*p)[5];
        p = a;
        p++;
    }
    

    这个时候,我们可以通过监控变量看到:

    当p进行加1运算的时候,p这个指针则指向了第二组5个整型数据。

    可是如果我们需要一个指针逐个访问整型元素而不是逐行在数组中移动,我们应该怎么办呢?

    int *p = &a[0][0];
    

    放入整个代码中即为:

    #include <stdio.h>
    void main()
    {
    	int a[4][5]={{0,0,0,0,0},
    				 {1,1,1,1,1},
    				 {2,2,2,2,2},
    				 {3,3,3,3,3}};	
    	int *p = &a[0][0];
    }
    

    这个时候,p则指向了一个将二维数组揉成一维数组的一个整型数组,此时进行运算:

    p += 19;
    printf("结果是%d",*p);
    

    这个时候输出为“结果是3”。
    或者我们也可将int *p = &a[0][0];替代为int *p = a[0];,具有相同的效果。

    Command 2: int *p[4];

    那这个第二句是什么意思呢?
    由于[]优先级高,先与p结合,所以p成为一个内含4个元素的数组。然后*表示p数组内含4个指针。最后,int表示p数组中的指针都指向int类型的值。因此,这行代码声明了两个指向int的指针。而前面有圆括号的版本,*先与pz结合,因此声明的是一个指向数组(内含5个int类型的值)的指针。
    我们试一下运行下面的代码:

    #include "stdio.h"
    void main()
    {
        const int a[4][5]={{0,0,0,0,0},{1,1,1,1,1},{2,2,2,2,2},{3,3,3,3,3}};
        int *p[4];
        for(int i=0;i<5;i++)
        {
            p[i] = a[i];
        }
        printf("The first number is %d.\n", a[0][0]);
    }
    


    从结果我们可以显然看到,p首先是含有4个元素的数组,而这4个元素都是指向整型的指针,最终每个元素都是指向a的每行首个元素的指针。

    3. 将指针传递到函数的形参中

    a. 将整个二维数组传递到函数的形参中

    这样的函数的原型声明方式有几种呢?

    void func1 ( int (*p)[5] );
    void func2 ( int a[ ][5] ); 
    void func3 ( int a[4][5] );
    

    b. 将二维数组的某一行传递到函数的形参中

    为了方便我们讲解,不妨我们先定义一个自定义函数:

    void function(int *a,int *b)
    {
        int i;
        for(i=0;i<5;i++)
        {
            printf("a[%d]=%d ",i,a[i]);
        }
    
        for(i=0;i<5;i++)
        {
            printf("b[%d]=%d ",i,b[i]);
        }
    }
    

    我们依然以上文所述的两种定义情况来做讲解:

    Command 1: int (*p)[5];

    我们总结一下上文所说,这个时候p是指向二维数组a的第一行的五个元素的数组指针,所以要将a的第一、二行传递到函数中,我们应该用以下语句:

    function(p,q+1);
    

    运行结果是:a[0]=0 a[1]=0 a[2]=0 a[3]=0 a[4]=0 b[0]=1 b[1]=1 b[2]=1 b[3]=1 b[4]=1

    Command 2: int *p[4];

    我们总结一下上文所述,这个时候p是指向二维数组a的每一行的首元素的数组指针,所以要将a的第一、二行传递到函数中,我们应该用以下语句:

    function(p[0],p[1]);
    

    运行结果是:a[0]=0 a[1]=0 a[2]=0 a[3]=0 a[4]=0 b[0]=1 b[1]=1 b[2]=1 b[3]=1 b[4]=1

    4. 总结

    现在再回头看我们开头所提出的几个问题:

    • 二维数组如何进行声明?
    • 二维数组如何作为指针传递到函数形参中?
    • 二维数组如何向函数传递某一行的元素?
    • 在使用二维数组的时候我们有哪些注意事项,如何节省系统的存储空间?

    我相信大家一定都颇有收获了。
    本文所参考例子是本人经过较长时间思考所得出非常经典的例子,希望大家仔细思考吸收!

    参考文献

    [1] Kenneth R. Pointers on C[M]. Pearson Education India, 2007.
    [2] Prata S. C primer plus[M]. Pearson Education, 2014.

    展开全文
  • 【要求】找出一个二维数组中的鞍点,即该位置上的元素在该行上最大,在该列上最小。也可能没有鞍点。 【咀嚼】我的思路是,某一行上有可能有两个相等的数,且都是最大值,如果只判断第一个数,第二个便不再判断,而...

    【要求】找出一个二维数组中的鞍点,即该位置上的元素在该行上最大,在该列上最小。也可能没有鞍点。

    【咀嚼】我的思路是,某一行上有可能有两个相等的数,且都是最大值,如果只判断第一个数,第二个便不再判断,而第二个数才是其所在的列上最小的,就会把一些鞍点漏掉(在列上也是如此,相同的都要判断)。所以我设定一行上可以有一个以上鞍点,也就是说,如果整个数组的元素都是相同的,那么这个数组里的每一个元素都是鞍点。

    据于此,我写下如下代码

     1 #include<stdio.h>
    2 int main()
    3 {
    4 int ctu;
    5 do
    6 { //begin
    7 int a[18][18],i,j,b=1,c=0,d,m,n; //b用来标记,c用来计数,d是另外的循环控制
    8 printf("请自定义数组大小,如3*4\n");
    9 scanf("%d*%d",&m,&n);
    10 printf("请输入一个%d×%d的二维数组\n",m,n);
    11 for(i=0;i<m;i++)
    12 for(j=0;j<n;j++)
    13 scanf("%d",&a[i][j]); //输入数组
    14 for(i=0;i<m;i++) //第一层循环,控制行
    15 for(j=0;j<n;j++) //第二层循环,控制列
    16 {
    17 for(d=0;d<n;d++) //判断是否行上最大
    18 if(a[i][j]<a[i][d]) b=0;
    19 if(b==0) continue;
    20 for(d=0;d<m;d++) //判断是否列上最小
    21 if(a[i][j]>a[d][j]) b=0;
    22 if(b==0) continue;
    23 c++;
    24 printf("第%d个鞍点:%d,位于第%d行、第%d列\n",c,a[i][j],i+1,j+1);
    25 }
    26 if(c==0)printf("该二维数组没有鞍点");
    27 else printf("该数组有%d个鞍点",c);
    28 printf("\n是否继续?\n输入1继续,否则任意键退出\n"); //end
    29 scanf("%d",&ctu);
    30 }while(ctu==1);
    31 return 0;
    32 }

     

    但是在测试时出现了如下错误,即只能判断出所有的元素都相等的情况,一般情况则无法判断。

    所有的元素都相同,可以正确地把所有的数字都找出来,但是输入一个普通的数字,则无法正常找出,下图

    经过分析,原来是在第16与17行之间少了一个让判断标志b重置为1的语句,导致如果第一个元素不成立,则b变成了0,之后的每一个元素都会直接跳出。

    修改如下:

     1 #include<stdio.h>
    2 int main()
    3 {
    4 int ctu;
    5 do
    6 { //begin
    7 int a[18][18],i,j,b,c=0,d,m,n; //b用来标记,c用来计数,d是另外的循环控制
    8 printf("请自定义数组大小,如3*4\n");
    9 scanf("%d*%d",&m,&n);
    10 printf("请输入一个%d×%d的二维数组\n",m,n);
    11 for(i=0;i<m;i++)
    12 for(j=0;j<n;j++)
    13 scanf("%d",&a[i][j]); //输入数组
    14 for(i=0;i<m;i++) //第一层循环,控制行
    15 for(j=0;j<n;j++) //第二层循环,控制列
    16 {
    17 b=1; //先前的错误就在于此,要重置b为1
    18 for(d=0;d<n;d++) //判断是否行上最大
    19 if(a[i][j]<a[i][d]) b=0;
    20 if(b==0) continue;
    21 for(d=0;d<m;d++) //判断是否列上最小
    22 if(a[i][j]>a[d][j]) b=0;
    23 if(b==0) continue;
    24 c++;
    25 printf("第%d个鞍点:%d,位于第%d行、第%d列\n",c,a[i][j],i+1,j+1);
    26 }
    27 if(c==0)printf("该二维数组没有鞍点");
    28 else printf("该数组有%d个鞍点",c);
    29 printf("\n是否继续?\n输入1继续,否则任意键退出\n"); //end
    30 scanf("%d",&ctu);
    31 }while(ctu==1);
    32 return 0;
    33 }

     

    测试成功

     

     新浪微博,欢迎关注,欢迎各种交流

    转载于:https://www.cnblogs.com/fengzy/archive/2011/11/12/2246739.html

    展开全文
  • C语言,二维数组 找鞍点

    千次阅读 2013-11-30 01:54:41
    鞍点(Saddle point)在微分方程中,沿着某一方向是稳定的,另一条方向是不稳定的奇点,叫做鞍点。在泛函中,既不是极大值点也不是极小值点的临界点,叫做鞍点。在矩阵中,一个数在所在中是最大值,在所在列中是...
  • C语言二维整型数组的“最大点”(驻点)

    千次阅读 多人点赞 2019-11-17 21:35:50
    【问题描述】 求二维整型数组的“最大点”。二维数组的“最大点”定义为:某个数是所在的最大值,并且是所在列...然后在后续n上输入二维数组的元素,每有m个以若干空格分隔的整数,代表二维数组在该行上的所有...
  • 数组(维和二维)与指针(C语言

    千次阅读 2016-12-06 16:04:59
    三指向数组的指针变量指向二维数组某一行 读者,你好! 如果你精通C,希望能得到你的斧正;如果你是初学者,希望能对你有所帮助。 加粗的是一些我认为比较重要的内容。一、指向一维数组的指针1、使指针指向数组首...
  • no.1 二维数组当函数参数...用二维数组score[][4]保存同学们的高数、英语、C语言成绩及总成绩(在此假设学生的学号为整型的连续值,用数组的下标作学号)。在此基础上,完成下面的操作: (1)输入学生的实际人数n...
  • 如果把长方体看作是一个三维数组,那么每个切面就是一个二维数组。 Input 第一行是3个正整数a、b、c,分别表示长方体的长、宽、高。0 , b, c ≤ 60 接下来是 c 块数据,每一块数据有a行、每行b个整数。 ...
  • 如果把长方体看作是一个三维数组,那么每个切面就是一个二维数组。 Input 第一行是3个正整数a、b、c,分别表示长方体的长、宽、高。0 , b, c ≤ 60 接下来是 c 块数据,每一块数据有a行、每行b个整数。 Output ...
  • C语言基础知识-数组

    2020-11-11 10:57:47
    二维数组:军训时排列的某一行某一列上的某个人 三维数组:军训时,某个方阵中的某行某列 特性: 同一种数据类型的元素放在一个集合里面 数组是一组有序的集合 数组的下标第一个为0 数组引用时切记不能...
  • 定义个55列的二维数组,数组元素初始化的规则为:下标i的元素值=2*i+3。将这些数据按照行列模式输出,并分别计算两条对角线上的值之和。</p>
  • 指向二维数组元素的指针,个地址,你需要的,只是这个数组里面的各个元素 指向维数组的指针,多个地址,在使用二维数组时,一直访问到每指定长度为止 指针数组 保存多个地址的时候,能表示多个数组 指针...
  • C++多维数组

    2021-01-18 21:40:12
    两个口袋里放两个土豆叫二维数组, 嗯,今天菜市场打折了,买了袋土豆,怎么往家里给父母邮? 为了彼此之间不被磕伤,只好把他们放在个个加海绵的格子里了。 C语言牛X大佬给这种格子起了个名字叫做多维数组 ...
  • 数组指针实质是指针,C语言中是二维数组的行指针 eg:int a[100][100];  int *p=a;//这种写法是错误的  int (*p)[100]=a; 数组指针实质是行指针,每增加1,是要移动100个元素,从a的行移动到下一行  指针...
  • 这类题型比较抽象,所以我们直接来学用法,当我们这样定义一个指向二维数组行变量的指针((*p)[列数]),并且将它与某一二维数组相关联以后(p=二维数组名+某数n),我么可以写成这样:*(*(p+i)+j)=二维数组名[n+i][j]...
  • 二维数组的元素也称为双下标变量,其表示的形式为:  数组名[下标][下标]  其中下标应为整型常量或整型表达式。例如: a[3][4] 表示a数组三四列的元素。下标变量和数组说明在形式中有些相似,但这两者具有完全...
  • 矩阵是按照长方阵列排列的实数集合,在C语言中可以用二维数组来表示 若A是m*n的矩阵 ,在C++中可以创建一个二维数组A [m] [n], 用两个变量ij来描述矩阵中某一数的与列即A [i] [j],如下是程序的一部分, 功能是...
  • 如何在一维存储器中存放二维数组,可有两种方式:一种是按行排列, 即放完一行之后顺次放入第二行。另一种是按列排列, 即放完一列之后再顺次放入第二列。在C语言中,二维数组是按行排列的。 在图4.1中,按行顺次...
  • C语言实现扫雷游戏

    2018-07-28 11:34:12
    我们要设计的是个9x9的棋盘,布有10个雷,那我们是不是就 想到需要创建个九九列的二维数组,1表示雷,0表示没有雷,这样能完成吗?答案是否定的。用1表示雷的话,如果处周围有个雷,则显...
  • 在做笔试题时,常见给出多行输入的情况,其中第行会输入以下几行的行数或之类的信息,然后将以下几行放入维或二维数组中。 例:获取维数组 输入: 第1行为n代表用户的个数 第2行为n个整数,第i个代表...
  • 1、题目翻译:题目意思是求一个二维数组内的一个矩形的和res(1 ×1,1×2,2×2…),且res 是小于等于k的最大值。如果里面某一个元素或者一个求和等于k的话,那么res直接就是k。 2、解题思路:采用暴力破解法,...
  • c语言第九周练兵区

    2020-08-31 16:13:30
    题目内容:某二维数组存放的数据构成个nn的方阵,其中n<=5。写程序,从键盘输入n的值(n<=5),该nn矩阵中各元素的值按下面的公式计算:a[i][j] = i * n + j + 1其中,a[i][j]表示第i第j列的元素。要求...
  • 思路:一开始拿到题我想到的是用两个二维数组进行两两相乘,后来发现时间复杂度太高了。在仔细读题,可以发现我们可以将每行最大值和次大值保存下来,最大值一定是由行的最大值或次大值乘以另一行最大值或次..
  • 你必须知道的495个C语言问题

    千次下载 热门讨论 2015-05-08 11:09:25
    6.18 当我向个接受指针的指针的函数传入二维数组的时候,编译器报错了。 6.19 我怎样编写接受编译时宽度未知的二维数组的函数? 6.20 我怎样在函数参数传递时混用静态和动态多维数组? 数组的大小 6.21 当...
  • mooc哈工大c语言答案

    2018-12-06 16:27:16
    某二维数组存放的数据构成个n*n的方阵,其中n。写程序,从键盘输入n的值(n),该n*n矩阵中各元素的值按下面的公式计算: a[i][j] = i * n + j + 1 其中,a[i][j]表示第i第j列的元素。要求分别输出该矩阵和它...

空空如也

空空如也

1 2 3
收藏数 55
精华内容 22
关键字:

c语言二维数组某一行

c语言 订阅