求大神帮我看下代码哪里出错了!
程序代码:
#include <stdio.h> int main(void) { int r, c; scanf("%d %d", &r, &c); int cake[r][c]; int i, j, cnt=0, cou=0, a=0, b=0, cell=0; getchar(); //抵消一个回车符 for( i=0; i<r; i++ ){ for( j=0; j<c; j++ ){ scanf("%c", &cake[i][j]); } getchar(); } // printf("%c\n", cake[0][0]); // printf("%c\n", cake[0][1]); // printf("%c\n", cake[0][2]); // printf("%c\n", cake[0][3]); // printf("%c\n", cake[2][2]); for( i=0; i<r; i++ ){ for( j=0; j<c; j++ ){ cnt++; if( cake[i][j] == 'S' ){ cnt = 0; break; } } if( cnt>0 ){ a++; } } for( j=0; j<c; j++ ){ for( i=0; i<r; i++ ){ cou++; if( cake[i][j] == 'S' ){ cou = 0; break; } } if( cou>0 ){ b++; } } cell = cnt + cou - a*b; printf("%d", cell); return 0; }
输入: 3 4
S...
....
..S.
为什么if( cake[i][j] == 'S' )会出错呢?没有一个是相等的!