Unit 38.8

Run Settings
LanguageC
Language Version
Run Command
#pragma warning(disable:4996) #include <stdio.h> #include <stdlib.h> int main() { int m = 0, n = 0, i = 0, j = 0, num = 0; scanf("%d %d", &m, &n); char *array = malloc(sizeof(char *) m); for (i = 0; i < m; i++) { array[i] = malloc(sizeof(char) (n + 1)); memset(array[i], 0, sizeof(char) (n + 1)); } for (i = 0; i < m; i++) { scanf("%s", array[i]); } for (j = 0; j < n; j++) { for (i = 0; i < m; i++) { if (array[i][j] != '*') { array[i][j] = 48; } } } ////////////////////////////// if (array[0][0] != '*') { if (array[0][1] == '*') array[0][0] += 1; if (array[1][0] == '*') array[0][0] += 1; if (array[1][1] == '*') array[0][0] += 1; } /////////////////////////////// if (array[m - 1][0] != '*') { if (array[m - 1][1] == '*') array[m - 1][0] += 1; if (array[m - 2][0] == '*') array[m - 1][0] += 1; if (array[m - 2][1] == '*') array[m - 1][0] += 1; } /////////////////////////////// if (array[0][n - 1] != '*') { if (array[1][n - 2] == '*') array[0][n - 1] += 1; if (array[0][n - 2] == '*') array[0][n - 1] += 1; if (array[1][n - 1] == '*') array[0][n - 1] += 1; } /////////////////////////////// if (array[0][n - 1] != '*') { if (array[m - 1][n - 2] == '*') array[m - 1][n - 1] += 1; if (array[m - 2][n - 2] == '*') array[m - 1][n - 1] += 1; if (array[m - 2][n - 1] == '*') array[m - 1][n - 1] += 1; } /////////////////////////////// for (i = 1; i < m - 1; i++) { if (array[i][0] != '*') { if (array[i - 1][0] == '*') array[i][0] += 1; if (array[i + 1][0] == '*') array[i][0] += 1; if (array[i - 1][1] == '*') array[i][0] += 1; if (array[i][1] == '*') array[i][0] += 1; if (array[i + 1][1] == '*') array[i][0] += 1; } if (array[i][n - 1] != '*') { if (array[i - 1][n - 1] == '*') array[i][n - 1] += 1; if (array[i + 1][n - 1] == '*') array[i][n - 1] += 1; if (array[i - 1][n - 2] == '*') array[i][n - 1] += 1; if (array[i][n - 2] == '*') array[i][n - 1] += 1; if (array[i + 1][n - 2] == '*') array[i][n - 1] += 1; } } ///////////////////////////////////////////////////// for (i = 1; i < n - 1; i++) { if (array[0][i] != '*') { if (array[0][i - 1] == '*') array[0][i] += 1; if (array[0][i + 1] == '*') array[0][i] += 1; if (array[1][i - 1] == '*') array[0][i] += 1; if (array[1][i] == '*') array[0][i] += 1; if (array[1][i + 1] == '*') array[0][i] += 1; } if (array[m - 1][i] != '*') { if (array[m - 1][i - 1] == '*') array[m - 1][i] += 1; if (array[m - 1][i + 1] == '*') array[m - 1][i] += 1; if (array[m - 2][i - 1] == '*') array[m - 1][i] += 1; if (array[m - 2][i] == '*') array[m - 1][i] += 1; if (array[m - 2][i + 1] == '*') array[m - 1][i] += 1; } } ///////////////////////////////////////////////////// for (i = 1; i < m - 1; i++) { for (j = 1; j < n - 1; j++) { if (array[i][j] != '*') { if (array[i - 1][j - 1] == '*') array[i][j] += 1; if (array[i - 1][j] == '*') array[i][j] += 1; if (array[i - 1][j + 1] == '*') array[i][j] += 1; if (array[i][j - 1] == '*') array[i][j] += 1; if (array[i][j + 1] == '*') array[i][j] += 1; if (array[i + 1][j - 1] == '*') array[i][j] += 1; if (array[i + 1][j] == '*') array[i][j] += 1; if (array[i + 1][j + 1] == '*') array[i][j] += 1; } } } ///////////////////////////////////////////////////// for (i = 0; i < n; i++) { printf("%s\n", array[i]); } for (i = 0; i < m; i++) { free(array[i]); } free(array); return 0; }
Editor Settings
Theme
Key bindings
Full width
Lines