#include <iostream>
#include <windows.h>
#include <fstream>
#define N 64
using namespace std;
bool isPeak(int grid[][N], int r, int c);
int main() {
int nrows, ncols;
int map[N][N];
string filename;
ifstream file;
cout << "请输入文件名:\n";
cin >> filename;
file.open(filename.c_str());
if (file.fail()) {
cout << "打开输入文件出错.\n";
exit(1);
}
file >> nrows >> ncols;
if (nrows > N || ncols > N) {
cout << "网格太大,调整程序.\n";
exit(1);
}
//从数据文件读数据到数组
for (int i = 0; i < nrows; i++) {
for (int j = 0; j < ncols; j++) {
file >> map[i][j];
}
}
//判断并打印峰值位置
for (int i = 1; i < nrows - 1; i++) {
for (int j = 1; j < ncols - 1; j++) {
if (isPeak(map, i, j)) {
cout << "峰值出现在行:" << i << "列:" << j << endl;
}
}
}
//关闭文件
file.close();
//结束程序
return 0;
}
bool isPeak(int grid[][N], int i, int j) {
if ((grid[i - 1][j] < grid[i][j]) &&
(grid[i + 1][j] < grid[i][j]) &&
(grid[i][j - 1] < grid[i][j]) &&
(grid[i][j + 1] < grid[i][j]))
return true;
else
return false;
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· .NET10 - 预览版1新功能体验(一)