二维数组(数组)

二维数组

二维数组的定义


格式:数据类型 数组名[常量表达式1][常量表达式2];

int a[10][5]; //定义一个10行5列的存储整形变量二维数组
float b[20][9];//定义一个20行9列的存储单精度实数变量二维数组
char c[100][120];//定义一个100行120列的字符变量二维数组

二维数组定义的规则与一维数组一样,不再赘述。



一维数组与二维数组直观上的区别:

一维数组:

eeeeeeeeee

二维数组:


eeeeeeeeee
eeeeeeeeee
eeeeeeeeee
eeeeeeeeee
eeeeeeeeee
eeeeeeeeee
eeeeeeeeee
eeeeeeeeee
eeeeeeeeee
eeeeeeeeee



模型:

#include<bits/stdc++.h>
using namespace std;
int n,a[1000][1000];//n为输入多少次
int main(){
    //(n*n次,二维数组适合做图形题)
    //a[10000][10000]为二维数组
    scanf("%d",&n);//输入n(用cin>>(输入变量)也可以) 
    for(int i=1;i<=n;i++){
        for(int j=1;j<=n;j++){
            scanf("%d",&a[i][j]);//和图形题一样,用双层for循环输入 
        }
    } 
    for(int i=1;i<=n;i++){
        for(int j=1;j<=n;j++){
            printf("%d",a[i][j]);//输出 
        }
        printf("\n");//换行 
    } 
    return 0;
} 

例题


题目描述


输入整数 N ,输出相应方阵。


输入

一个整数 N 。 ( 0<n<10 )


输出

一个方阵,每个数字的场宽为 3 。


样例

输入

5

输出

  0  0  0  0  1
  0  0  0  1  0
  0  0  1  0  0
  0  1  0  0  0
  1  0  0  0  0



思路:观察要赋值的数的下标,可得规律

#include<bits/stdc++.h>
using namespace std;

int a[20][20];
int main() {
    int n,i,j;
    cin>>n;
    //循环赋值元素的个数,赋值n个数
    //该循环表示,循环赋值元素的个数
    for(i=0;i<n;i++){
        a[i][n-1-i]=1;
    }
    //输出 
    //循环行
    for(i=0;i<n;i++){
        //循环列
        for(j=0;j<n;j++){
            cout<<setw(3)<<a[i][j];
        }
        //第i行输出结束,输出换行
        cout<<endl;
    }
    return 0;
}
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值