java二维数组周边元素_求出二维数组主对角线、次对角线以及周边元素之和
某个同学的题目,写了一下。
题目大概是这样的:
编写函数,求出二维数组主对角线、次对角线以及周边元素之和。
要求:二维数组的行数、列数、数组元素在main函数中由键盘输入。
#include
int main()
{
int row,col;
printf("请输入“行数”和“列数”:");
scanf("%d,%d",&row,&col);
printf("请为%d*%d数组赋值:\n",row,col);
int arr[row][col];
for(int i = 0; i < row; i++)
{
for(int j = 0; j < col; j++)
{
printf("当前[%d,%d]:",j,i);
scanf("%d",&arr[j][i]);
}
}
int count = row > col ? col : row;
int xSpeed = (row - 0)/count;
int ySpeed = (col - 0)/count;
printf("X轴每次递增%d个下标\n",xSpeed);
printf("Y轴每次递增%d个下标\n",ySpeed);
//这里要考虑对角线不标准情况,比如3*4的矩形
int numA = 0;
int x=0,y=0;
for(int i = 0; i < count; i++)
{
printf("%d,%d\n",x,y);
numA += arr[x][y];
x+=xSpeed;
y+=ySpeed;
//这里要考虑对角线不标准情况,比如3*4的矩形
//对角线的最后一位可能不是右下角的坐标,直接强制指向右下角坐标
if(x == col-1 && y != row-1 || x != col-1 && y == row-1)
{
x = row-1;
y = col -1;
}
}
printf("主对角线之和为:%d\n",numA);
int numB = 0;
x = col-1;
y = 0;
for(int i = 0; i < count; i++)
{
printf("%d,%d\n",x,y);
numB += arr[x][y];
x-=xSpeed;
y+=ySpeed;
//这里要考虑对角线不标准情况,比如3*4的矩形
//对角线的最后一位可能不是左下角的坐标,直接强制指向左下角坐标
if(x == 0 && y != row-1 || x != 0 && y == row-1)
{
x = 0;
y = row -1;
}
}
printf("次对角线之和为:%d\n",numB);
int numC=0;
for (int i =0;i < row;i ++)
{
for (int j= 0; j < col; j++)
{
if(i==0 || j == 0 || i == row-1 || j == col -1)
{
numC += arr[i][j];
}
}
}
printf("周边长度之和:%d\n",numC);
}
某位同学,做人很重要啊!
java二维数组周边元素_求出二维数组主对角线、次对角线以及周边元素之和相关推荐
- python查找两个数组中相同的元素_找出两个数组的相同元素,最优算法?
在做新旧接口交替过程中,遇到了老接口和新接口json数据有些不一致的情况,需要比较两个json对象,把相同的元素赋其中一个json对象中变量的值.而且其中一个json最后输出格式还需要改变下属性名,思 ...
- C语言:向一个数组输入数据,并求出该整形数组中的最大值(vs)
一,问题:找出该数组中最大的数: 二:思路: (1)可以通过"遍历数组"的方式实现该问题 三,实现过程: (1)先用sizeofarr定义该整型数组实际的元素长度: (2)在向实际 ...
- java写100以内的素数_求出100以内的素数(java实现)
j package test1; //2018/11/30 //求100以内的所有素数 public class Main10 { public static void main(String[] a ...
- C语言编程>第七周 ⑧ 请编一个函数void fun(int a[M][N],int b[N]),c指向一个M行N列的二维数组,求出二维数组每列中最大元素,并依次放入b所指一维数组中。
例题:请编一个函数void fun(int a[M][N],int b[N]),c指向一个M行N列的二维数组,求出二维数组每列中最大元素,并依次放入b所指一维数组中.二维数组中的数己在主函数中赋予. ...
- C语言试题二十三之编写一个函数void function(int tt[m][n],int pp[n]),tt指向一个m行n列的二维函数组,求出二维函数组每列中最小元素,并依次放入pp所指定一维数组中
1. 题目 请编写一个函数void function(int tt[m][n],int pp[n]),tt指向一个m行n列的二维函数组,求出二维函数组每列中最小元素,并依次放入pp所指定一维数组中.二 ...
- 13.请编一个函数void fun(int tt[M][N],int pp[N]),tt指向一个M行N列的二维数组,求出二维数组每列中最小元素,并依次放入pp所指一维数组中。
13.请编一个函数void fun(int tt[M][N],int pp[N]),tt指向一个M行N列的二维数组,求出二维数组每列中最小元素,并依次放入pp所指一维数组中.二维数组中的数已在主函数中 ...
- 请编写一个函数void fun(int tt[M][N],int pp[N]),tt指向一个M行N列的二维数组,求出二维数组每列中最小元素,并依次放入pp所指一维数组中。
#include <iostream> #include<iomanip> using namespace std; #define M 3 #define N 4 /*求出二 ...
- Java黑皮书课后题第7章:7.10(找出最小元素的下标)使用下面的方法头编写一个方法,求出一个整数数组中的最小元素下标。编写测试程序,提示用户输入10个数字,调用这个方法返回最小值的下标(多个则最小
7.10(找出最小元素的下标)使用下面的方法头编写一个方法,求出一个整数数组中的最小元素下标.编写测试程序,提示用户输入10个数字,调用这个方法返回最小值的下标(多个则返回最小的下标) 题目 题目描述 ...
- Java黑皮书课后题第7章:7.9(找出最小元素)使用下面的方法头编写一个方法,求出一个整数数组中的最小元素。编写测试程序,提示用户输入10个数字,调用这个方法返回最小值,并显示这个最小值
7.9(找出最小元素)使用下面的方法头编写一个方法,求出一个整数数组中的最小元素.编写测试程序,提示用户输入10个数字,调用这个方法返回最小值,并显示这个最小值 题目 题目描述与运行示例 破题 代码 ...
最新文章
- 双调整!清华大学迎来新任书记、校长
- python【数据结构与算法】快速幂and矩阵快速幂取模(看不懂你来打我)
- ASPNet_Compiler学习总结
- 最大后验概率和极大似然
- Oracle 用户管理
- evaluate函数使用无效_我用这个Excel函数,秀了同事一脸!很多人却连它名字都没听过...
- MySql数据库SQL语言基础知识点—Navicat
- OpenCV示例学习(二): 基本图形绘制算子:line(),circle(),fillPoly(), ellipse()
- [机器学习] focal loss:解决样本不平衡的一种通用方案
- 修改 tomcat 初始 ROOT 的方法
- Android Message和obtainMessage的区别
- 解决C:/WINDOWS/system32/aliedit/a找不到文件的错误提示
- 电脑小写字母怎么切换_WPS“文档”——大小写字母快速转换
- 完美安装运行Xcelsius 2008 SP3解决方案
- uniapp 微信小程序 保存图片到本地
- 《Learn python3 the hard way》ex14 Prompting and Passing
- mysql使用报错1142(42000)解决方法
- Kali 2021 设置中文输入法
- python-解析获取二维码内容
- java学习总结——通过题来学习Java(Java基础语法)
热门文章
- 如果不是生活所迫,谁愿意把自己搞的才华横溢
- angular的ngStrictDi
- Ps制作食物网站展示
- 案例-背景图片的使用(background)
- 一个可以下载手机网站模板的工作室
- vba 跳出for循环_ExcelVBA的三重FOR循环退出
- Python .format()函数使用方法
- Hadoop-3.3.0安装 Centos 8.2安装Hadoop-3.3.0 Hadoop-3.3.0安装指南
- 静态文档,动态文档和活动文档
- Silverstack Lab for Mac(媒体资源数据管理工具)激活版