解题思路:
#include<iostream> using namespace std; const int N=100; char map[N][N],res[N][N]; int visited[N][N],n,m; const int Move[8][2] = {{0,1},{-1,1},{-1,0},{-1,-1},{0,-1},{1,-1},{1,0},{1,1}}; char solve(int x,int y){ int count=0; char c; visited[x][y] = 1; for(int i=0;i<8;i++){ int x1 = x + Move[i][0]; int y1 = y + Move[i][1]; if(x1<n&&y1<m&&x1>=0&&y1>=0&&map[x1][y1]=='*'){ count++; } } c = count + '0'; return c; } int main(){ int count=0; while(cin>>n>>m){ if(n==0&&m==0) break; count++; for(int i=0;i<n;i++) for(int j=0;j<m;j++) {cin>>map[i][j];visited[i][j]=0;} cout<<"Field #"<<count<<":"<<endl; for(int i=0;i<n;i++){ for(int j=0;j<m;j++){ if(map[i][j]=='.') res[i][j] = solve(i,j); else res[i][j] = map[i][j]; cout<<res[i][j]; } cout<<endl; } cout<<endl; } return 0; } 为啥格式错
注意事项:
参考代码:
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:538 |
C语言程序设计教程(第三版)课后习题11.1 (C语言代码)浏览:695 |
数组输出 (C语言代码)浏览:811 |
剪刀石头布 (C语言代码)不知道怎么直接在scanf中用枚举变量浏览:1435 |
Pascal三角 (C语言代码)浏览:1252 |
IP判断 (C语言描述,蓝桥杯)浏览:1118 |
1035 题解浏览:875 |
C语言程序设计教程(第三版)课后习题11.5 (C语言代码)浏览:1496 |
C语言程序设计教程(第三版)课后习题11.8 (C语言代码)浏览:756 |
C语言程序设计教程(第三版)课后习题7.3 (C语言代码)浏览:569 |