当前位置: 首页 > news >正文

C++ 矩阵旋转

【问题描述】

编写一个程序,读入一个矩阵,输出该矩阵以第一行第一列数字为中心,顺时针旋转90度后的新矩阵,例如:
输入的矩阵为:

1 2 3  
4 5 6

顺时针旋转90度后输出的矩阵为:

4 1  
5 2  
6 3

【输入形式】

  • 输入的第一行为两个正整数m和n,指定输入矩阵的行数和列数(0<m<=10,0<n<=10)

  • 剩下的输入为矩阵的内容,共m行,每行n个整数

  • 数据之间用空格分隔

【输出形式】

  • 输出的第一行为两个正整数m和n,为输出的新矩阵的行数和列数

  • 剩下的输出为新矩阵的内容,共m行,每行n个整数

  • 数据之间用空格分隔

  • 每行数据的最后无空格

  • 最后的一行输出后面无换行符

【样例输入1】

2 3
1 2 3
4 5 6

【样例输出1】

3 2
4 1
5 2
6 3

【样例输入2】

1 5
1 3 5 7 9

【样例输出2】

5 1
1
3
5
7
9

#include <iostream>
using namespace std;int main()
{//定义一个二维数组A,大小为10行10列,并初始化为全0int A[10][10] = { 0 };//定义变量m用于存储输入矩阵的行数,n用于存储列数//i和j用于后续循环遍历数组的行和列索引int m, n, i, j;//从标准输入读取矩阵的行数m和列数ncin >> m >> n;//外层循环遍历矩阵的每一行for (i = 0; i < m; i++){//内层循环遍历矩阵当前行的每一列for (j = 0; j < n; j++)//从标准输入读取矩阵A当前位置(i, j)的值cin >> A[i][j];}//输出旋转后矩阵的行数n和列数m,中间用空格隔开cout << n << " " << m << "\n";//外层循环遍历原矩阵的每一列(注意这里是按列优先输出)for (j = 0; j < n; j++){//内层循环遍历原矩阵当前列的每一行,从最后一行开始往前遍历for (i = m - 1; i >= 0; i--){//输出矩阵A当前位置(i, j)的值cout << A[i][j];//如果不是当前列的第一行(即不是最后一个要输出的值),则输出一个空格隔开if (i!= 0)cout << " ";//如果是当前列的第一行(即当前列已经输出完所有值)else{//如果不是最后一列,输出一个换行符,以便下一列的输出能换行显示if (j!= n - 1)cout << "\n";}}}return 0;
}

http://www.lryc.cn/news/490798.html

相关文章:

  • Docker学习笔记整理
  • 计算机组成原理期末试题三(含答案)
  • django+boostrap实现注册
  • C++初阶——类和对象(下)
  • 趋势洞察|AI 能否带动裸金属 K8s 强势崛起?
  • idea初始化设置
  • LINUX系统编程之——环境变量
  • 健康老龄化:适合老年人的播客
  • 家庭智慧工程师:如何通过科技提升家居生活质量
  • Milvus概念
  • 为什么调用 setState 而不是直接改变 state
  • 【Python爬虫五十个小案例】爬取豆瓣电影Top250
  • cocos creator 3.8 物理碰撞器Collider+刚体RigidBody 8
  • Python爬取豆瓣电影全部分类数据并存入数据库
  • 算法模板1:排序+二分+高精度+前缀+差分
  • SpringBoot实现单文件上传
  • rust中解决DPI-1047: Cannot locate a 64-bit Oracle Client library问题
  • YOLOv11(Ultralytics)视频选定区域目标统计计数及跟踪
  • 24小时自动监控,自动录制直播蓝光视频!支持抖音等热门直播软件
  • InfiniBand(IB)快速上手
  • D74【 python 接口自动化学习】- python 基础之HTTP
  • 移动光猫[HS8545M5-10]获取超密
  • 原生JS和CSS,HTML实现开屏弹窗
  • vue--制作购物车
  • 深度测评腾讯云 HAI 智算服务:高性能 AI 计算的新标杆
  • MQ重复消费与消息顺序
  • 应用商店双弹窗“APP在向用户申请权限时未同步告知用户申请此权限的理由”驳回uni-app应用上线的解决方法
  • 第 32 章 - Go语言 部署与运维
  • 噪杂环境离线语音通断器效果展示
  • 【django】扩展