转换不对(超级简短的问题)

转换出来就是不对,不知道问题出在哪了
#include<stdio.h>
int main(){
char k;int a[100][100];int n,m,i,j;scanf("%d%d",&n,&m);getchar();for(i=0;i<n;i++){for(j=0;j<m;j++){scanf("%c",&k);//printf("%c ",k);if(k=='*')a[i][j]=-1;else a[i][j]=0;}}for(i=0;i<n;i++){for(j=0;j<m;j++){printf("%d ",a[i][j]);if(j==m-1)printf("\n");}}}
getchar(k)