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

c语言:矩阵交换

题目:

代码和思路: 

#define  _CRT_SECURE_NO_WARNINGS
#include<stdio.h>

int main()
{
	int n = 0;
	int m = 0;
	int arr[10][10] = { 0 };
//	输入行和列
	scanf("%d%d", &n, &m);
	int i = 0;
	int j = 0;
	//读取数组
	for (i = 0; i < n; i++)
	{
		for (j = 0; j < m; j++)
		{
			scanf("%d", &arr[i][j]);
		}
	}
	int cnt = 0;//操作次数
	scanf("%d", &cnt);
	int a = 0;
	int b = 0;
	char op = 0;//操作字符
	for (int i = 0; i < cnt; i++)//循环几次操作几次
	{
		scanf(" %c %d %d", &op, &a, &b);
		if (op == 'r')
			//交换a和b行
		{
			for (j = 0; j < m; j++)
			{
				int tmp = arr[a - 1][j];//输入的比数组的下标多1,所以要-1
				arr[a - 1][j] = arr[b - 1][j];
				arr[b - 1][j] = tmp;
			}
		}
		if (op == 'c')
			//交换a和b列
		{
			for (j = 0; j < n; j++)
			{
				int tmp = arr[j][a - 1];
				arr[j][a - 1] = arr[j][b - 1];
				arr[j][b - 1] = tmp;
			}
		}
	}
	//打印交换完的数组
	for (i = 0; i < n; i++)
	{
		for (j = 0; j < m; j++)
		{
			printf("%d ", arr[i][j]);
		}
		printf("\n");
	}
	return 0;
}


http://www.kler.cn/a/135959.html

相关文章:

  • 前端常用布局模板39套,纯CSS实现布局
  • GaussDB部署架构
  • 微信小程序=》基础=》常见问题=》性能总结
  • 初始JavaEE篇 —— 网络编程(2):了解套接字,从0到1实现回显服务器
  • PostgreSQL中的COPY命令:高效数据导入与导出
  • MicroPythonBLEHID使用说明——蓝牙鼠标
  • C/C++多级指针与多维数组
  • AIGC ChatGPT4对Gbase数据库进行总结
  • Python-----PyInstaller的简单使用
  • linux上交叉编译qt库
  • [内存泄漏][PyTorch](create_graph=True)
  • 【小爱学大数据】FlinkKafkaConsumer
  • 浅析RSA非对称加密算法
  • 「Verilog学习笔记」ROM的简单实现
  • 机器学习第10天:集成学习
  • Vue 2.0的源码目录设计
  • vue3 vue-router 笔记
  • C# static关键字详解
  • 【Java程序员面试专栏 算法训练篇】二叉树高频面试算法题
  • 10-19 HttpServletResponse
  • ComText让机器人有了情节记忆
  • Upwork 新手使用指南——如何快速在Upwork上接单
  • 基于Vue+SpringBoot的校园电商物流云平台开源项目
  • MTK Pump Express 快速充电原理分析
  • 美国服务器:全面剖析其主要优点与潜在缺点
  • npm报错