当前位置 博文首页 > ljmhxs的博客:坐标位置初级(初学)(详)
在编程中,有许多学要用到坐标的题目,不会有很多初学者像我以前一样...
sh[i-1][j-1]++;
sh[i-1][j]++;
sh[i-1][j+1]++;
sh[i][j-1]++;
sh[i][j+1]++;
sh[i+1][j-1]++;
sh[i+1][j]++;
sh[i+1][j+1]++;
这样明显有点麻烦,教一个特别简单的方法:
首先定义两个数组(别告我数组也不会)
int dx[8]={-1,-1,-1,0,0,1,1,1};
int dy[8]={-1,0,1,-1,1,-1,0,1};
解释一下
-1,-1 | -1,0 | -1,1 |
0,-1 | x | 0,1 |
1,-1 | 1,0 | 1,1 |
发现没有,和上面的两个坐标完全可以对的上,表格中的坐标和x都有密不可分的关系,而当我们做题的时候通常都会让我们将x周围的数干点啥(假设要加1),于是我们这样做:
//前提:必须要知道x的坐标
for(int i=0;i<8;i++){
x1=x+dx[i]; //设x的横坐标为x
y1=y+dy[i]; //设x的竖坐标为y
a[x1][y1]++; //设你要操作的数组为a
}
这样就可以对x周围的数做点什么了
典型坐标题:扫雷(感兴趣的自己找,本人实在找不见简单的了)
希望对你有用!!!
点赞你要亮,关注干的漂亮
cs