- C++
信奥【下午1】二维数组
- 2024-4-20 15:34:54 @
课堂总结
1、什么是二维数组:在一维数组内再存一个一维数组
2、怎么定义:
数据类型 数组名[有多少行][有多少列]
3、怎么给二维数组赋初值(大括号赋值只能在初始化定义的时候用)
1)int ar[2][3]={{1,2},{3,4},{5,6}}
2)int ar[2][3]={1,2,3,4,5,6} //自动先行后列
3)int ar[2][3]={{1},{3}} //未赋值会自动补0
4)int ar[2][3]={1,3} //未赋值会自动补0
4、程序中赋值(行序号=行下标+1,列序号=列下标+1,下标从0开始)
int ar[2][3]={0};//建立一个二维数组,2行3列。
ar[1][1]=100;//给数组中的第二行第二列赋值100。
5、遍历的时候先行后列
6、理解储存单位
b bit 位
B byte=8b 字节
KB =1024*B 千字节
MB =1024*KB 兆字节
GB =1024*MB 千兆字节
TB =1024*GB 兆兆字节
作业:
1、矩阵交换行
2、同行列对角线的格子
5 条评论
-
xinao017 LV 7 @ 2024-4-27 14:07:04
矩阵交换行
-
2024-4-27 14:04:28@
-
2024-4-27 14:00:34@
-
2024-4-27 13:58:13@
#include<bits/stdc++.h> using namespace std; int main(){ int n,x,y; cin>>n>>x>>y; for(int i=1;i<=n;i++){ for(int j=1;j<=n;j++){ if(i==x){ printf("(%d,%d)",i,j); } } } cout<<endl; for(int i=1;i<=n;i++){ for(int j=1;j<=n;j++){ if(i==y){ printf("(%d,%d)",i,j); } } } cout<<endl; for(int i=1;i<=n;i++){ for(int j=1;j<=n;j++){ if(i+j==x+y){ printf("(%d,%d)",i,j); } } } cout<<endl; for(int i=1;i<=n;i++){ for(int j=1;j<=n;j++){ if(i-j==x-y){ printf("(%d,%d)",i,j); } } } return 0; }
-
2024-4-27 13:34:50@
using namespace std; #define N 5 int main () { int ar[N][N]={0}; for(int i=0;i<N;i++) { for(int j=0;j<N; j++) { cin>>ar [i] [j]; } } int row1,row2,tmp; cin>>row1>>row2; if(row1>row2) { tmp=row1; row1=row2; row2=tmp; } row1--; row2--; for(int i=0;i<N;i++) { for(int j=0;j<N; j++) { if(i==row1) { tmp=ar[i][j]; ar[i][j]=ar[row2][j]; ar[row2][j]=tmp; } cout<<ar[i][j]<<" "; } cout<<endl; } return 0; }
- 1