c语言:矩阵交换

题目:

代码和思路:

cpp 复制代码
#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;
}
相关推荐
CoderYanger9 小时前
A.每日一题:1140. 石子游戏 II
java·程序人生·算法·leetcode·游戏·职场和发展·深度优先
小雨笙笙10 小时前
机器学习:评估模型与选择
人工智能·算法·机器学习
高亦真10 小时前
今天是学习嵌入式的第35天
linux·学习·算法
HugoStudio_SWAN10 小时前
洛谷 P1319 / P1320 压缩技术——同一枚硬币的正反面
c++·学习·程序人生·算法
wdfk_prog12 小时前
canopennode-rtt推荐,不只可以做从站,也可以承担主站角色
c语言·开发语言·数据库·学习·算法·深度优先
无小道12 小时前
C/C++——可变参数
c语言·开发语言·c++·可变参数
BioRunYiXue12 小时前
科研干货 | IC50全面解读:概念解析、实验设计与数据分析要点
java·开发语言·javascript·人工智能·算法·数据挖掘·数据分析
hahaha601612 小时前
HLS高层次综合设计技巧--UART_TX接收模块设计案例
人工智能·算法·计算机视觉
302wanger12 小时前
一个程序员看完《逆行人生》:电影没说透的,比电影更扎心
算法
hele_two12 小时前
C++模拟蚁群(二)
c++·算法·数学建模·图形渲染