二维数组定义及初始化

数组元素类型为一维数组的一维数组被称为二维数组。

二维数组的初始化

int a[2] [3]={{1,2,3},{4,5,6}};

输入 
for(i=0;i<3;i++)//列
{
for(j=0;j<4;j++)//行
{
scanf("%d",&a[i][j]);
}
}

输出
for(i=0;i<3;i++)//列
{
for(j=0;j<4;j++)//行
{
printf("%d",a[i][j]);
}
}
应用

行列互换

#include<stdio.h>
int main( )
{
    int i,j;
    int a[2][3]={{1,2,3},{4,5,6}};
    int b[3][2];
    for(i=0;i<2;i++){
        for(j=0;j<3;j++){
            printf("%d",a[i][j]);
        }
        printf("\n");
    }
    for(i=0;i<3;i++){
    
    for(j=0;j<2;j++)
    {
        printf("%d",a[j][i]);
    }
    printf("\n");}
 } 
 无初始化的
 #include<stdio.h>
int main( )
{
    int i,j;
    int a[2][3];
    int b[3][2];
    for(i=0;i<2;i++){
        for(j=0;j<3;j++){
            scanf("%d",&a[i][j]);
        }}
    for(i=0;i<2;i++){
        for(j=0;j<3;j++){
            printf("%d",a[i][j]);
        }
        printf("\n");
    }
    for(i=0;i<3;i++){
    
    for(j=0;j<2;j++)
    {
        printf("%d",a[j][i]);
    }
    printf("\n");}
 } 

矩阵的鞍点

#include<stdio.h>
#define N 3
#define M 4
int main( )
{
    int a[N][M],i,j,max,k;
    for(i=0;i<N;i++)
    for(j=0;j<M;j++)
    {
        scanf("%d",&a[i][j]);
}//输出 
for(i=0;i<N;i++)//找到第i行哪一列的值最大
{
    max=0;//假设第0列最大即a[i][0]最大 
    for(j=1;j<M;j++)//因为第0列为最大,所以从下一列开始比较 
    
        if(a[i][max]<a[i][j])
        max=j;//出来的第i列的最大的一个
        for(j=0;j<N;j++)//比较三行看看这个数是不是在这列里最小 
            {if(a[j][max]<a[i][max])
            {
                break;//如果这一行的最大的一个不在本列最小 则没鞍点 
             } }
             if(j==N)
             break; //如果循环结束a[i][max]还是最小则这个就是鞍点 
    }
    if(i==N)//如果循环可以正常结束则说明没找到鞍点
    printf("没有鞍点");//
    else{
        printf("鞍点在第%d行第2%d列!\n",i+1,max+1);//数列的下标比真实的小一 
    } 
}
杨辉三角
#include<stdio.h>
#define N 10
#define M 10
int main( )
{
    int a[N][M];
    int i,j;
    for(i=0;i<N;i++)
    for(j=0;j<M;j++)
    {
        a[i][j]=1;
    }
    for(i=0;i<N;i++)//控制行 
    {
        for(j=1;j<i-1;j++)//从第二列开始第一列都是一,最后一列也是一 
        {
            a[i][j]=a[i-1][j]+a[i-1][j-1];
        }
    }
    for(i=0;i<N;i++){
    
    for(j=0;j<i;j++)
    {
        printf("%5d",a[i][j]);
    }
    printf("\n");
}
}
三维数组的初始化
3,4,2 一个大括号里有三个中括号,三个中括号中的一个有四个小括号,四个小括号里中其中一个有2个数值

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值