Last updated on
2022级《程序设计基础I》实验6-二维数组
求一个3*3矩阵对角线元素之和
problemId:1185
Description
给定一个3*3的矩阵,请你求出对角线元素之和。
Input
按照行优先顺序输入一个3*3矩阵,每个矩阵元素均为整数。
Ouput
从左下角到右上角这条对角线上的元素之和
samples
<input>—> 1 2 3 3 4 5 6 0 1 <output>—> 13
Code
#include<stdio.h>
int main()
{
int arr[3][3];
int result=0,i,j;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
scanf("%d",&arr[i][j]);
for(i=0;i<3;i++)
result+=arr[i][2-i];
printf("%d",result);
return 0;
}
爬山
problemId:3442
Description
LeiQ最近参加了一个登山俱乐部,部长给他了一个n*m地图,地图上的每一个格子的值表示一个山的海拔高度,LeiQ现在在(x,y)表示在地图上的位置,他想要登上地图上最高的山,所以他想知道他爬上最高的山的山顶还需向上爬多少米。
例如:
<tbody>
<tr>
<td>
<p>x\y</p>
</td>
<td>
<p>1</p>
</td>
<td>
<p>2</p>
</td>
<td>
<p>3</p>
</td>
</tr>
<tr>
<td>
<p>1</p>
</td>
<td>
<p>100</p>
</td>
<td>
<p>130</p>
</td>
<td>
<p>150</p>
</td>
</tr>
<tr>
<td>
<p>2</p>
</td>
<td>
<p>200</p>
</td>
<td>
<p>300</p>
</td>
<td>
<p>100</p>
</td>
</tr>
<tr>
<td>
<p>3</p>
</td>
<td>
<p>100</p>
</td>
<td>
<p>150</p>
</td>
<td>
<p>50</p>
</td>
</tr>
</tbody>
现在LeiQ在(2,1),则他的位置海拔高度为200米,最高的为300米,所以还需爬100米
Input
多组输入
每组的第一行是两个整数n,m(1<=n,m<=100),表示地图的大小
接下来n行,每行m个整数,表示山的海拔高度(0<=Hij<=1000)
最后一行两个整数x,y表示LeiQ的位置
Ouput
输出他还需要向上爬多少米。
samples
<input>—> 3 3 100 130 150 200 300 100 100 150 50 2 1 <output>—> 100
Code
#include<stdio.h>
int main()
{
int n,m,a,b;
while(scanf("%d%d",&n,&m)!=EOF){
int arr[100][100]={};
int max=0,i,j;
for(i=0;i<n;i++)
for(j=0;j<m;j++){
scanf("%d",&arr[i][j]);
if(max<arr[i][j])
max=arr[i][j];
}
scanf("%d%d",&a,&b);
printf("%d\n",max-arr[a-1][b-1]);
}
return 0;
}
C语言实验——矩阵转置
problemId:1164
Description
输入N*N的矩阵,输出它的转置矩阵。
Input
第一行为整数N(1≤N≤100)。
接着是一个N*N的矩阵。
Ouput
转置矩阵。
samples
<input>—> 2 1 2 1 2 <output>—> 1 1 2 2
Code
#include<stdio.h>
int main()
{
int n;
scanf("%d",&n);
int arr[n][n];
int i,j;
for(i=0;i<n;i++)
for(j=0;j<n;j++)
scanf("%d",&arr[i][j]);
for(i=0;i<n;i++){
for(j=0;j<n;j++)
printf("%d ",arr[j][i]);
printf("\n");
}
return 0;
}
对称矩阵的判定
problemId:1522
Description
输入矩阵的行数,再依次输入矩阵的每行元素,判断该矩阵是否为对称矩阵,若矩阵对称输出“yes",不对称输出”no“。
### Input输入有多组,每一组第一行输入一个正整数N(N<=20),表示矩阵的行数(若N=0,表示输入结束)。
下面依次输入N行数据。
Ouput
若矩阵对称输出“yes",不对称输出”no”。
### samples \--> 3 6 3 12 3 18 8 12 8 7 3 6 9 12 3 5 8 12 6 3 0 \