求助,为什么样例1不能输出第三行,但是结果打印第三行和第一行
查看原帖
求助,为什么样例1不能输出第三行,但是结果打印第三行和第一行
614832
GYP123楼主2022/5/25 17:17
#include<stdio.h>
#include<stdlib.h> 
#include<string.h>
#include<stdbool.h>
bool a[105][105];
int main() {
	int i, j, n, m;
	char p;
	memset(a,0,sizeof(a));
	scanf("%d%d",&n,&m);
	for(i = 1;i <= n;i++) {
		for(j = 1;j <= m;j++) {
			scanf("%c",&p);
			if(p == '*')  { 
				a[i][j] = 1; 
			} 
		} 
	}
	for(i = 1;i <= n;i++) {
		for(j = 1;j <= m;j++) { 
			if( a[i][j] == 1)  printf("*"); 
			else { 
				printf("%d",a[i+1][j+1]+a[i+1][j-1]+a[i+1][j]+a[i][j+1]+a[i][j-1]+a[i-1][j+1]+a[i-1][j]+a[i-1][j-1]);
			}	 
		} 
		printf("\n"); 
	}
	return 0;
}
2022/5/25 17:17
加载中...