酷代码 AI
菜单
服务商
DeepSeek字节豆包
更多选项

C++矩阵行列修改算法实现及空格分隔输出

根据题目要求,这是一个矩阵修改问题。需要在指定位置(r,c)所在的行和列中,将除固定点外的所有可修改字符('.')改为'#',但固定点本身保持不变。 以下是完整的代码实现: ```cpp #include <iostream> using namespace std; char a[10][10]; // 全局二维数组,N最大为9,用10确保安全 int main() { int N; cin >> N; // 输入矩阵的大小 // 读入矩阵,从 a[1][1] 开始 for (int i = 1; i <= N; i++) { for (int j = 1; j <= N; j++) { cin >> a[i][j]; } } // 输入需要修改的行和列 int r, c; cin >> r >> c; // 修改指定的行 for (int j = 1; j <= N; j++) { if (j != c && a[r][j] == '.') // 不是固定列且字符为'.' { a[r][j] = '#'; } } // 修改指定的列 for (int i = 1; i <= N; i++) { if (i != r && a[i][c] == '.') // 不是固定行且字符为'.' { a[i][c] = '#'; } } // 输出修改后的矩阵 for (int i = 1; i <= N; i++) { for (int j = 1; j <= N; j++) { cout << a[i][j]; if (j < N) cout << " "; // 元素之间以空格分隔 } cout << endl; } return 0; } ``` ### 🎯 代码关键点说明 - **数组索引从1开始**:题目要求第r行第c列,代码中直接使用对应索引 - **修改条件判断**:只修改`.`字符,且不修改固定位置本身 - **空格分隔输出**:每个元素后跟一个空格,行末无多余空格 - **边界控制**:N的范围1-9,数组大小设为10保证安全 ######[AI问答 | 504点数解答 | 2026-07-11 20:49:07]

相关提问
本站限时免费提问中
实用工具查看更多
Linux在线手册 [开发类]
Jquery在线手册 [开发类]
今日油价 [生活类]
图片互转base64 [开发类]
时间转换器 [开发类]