0
我正在一个大学项目中工作,我应该写一些矿井下的游戏... 我写了我的程序 程序将打印minesweaper表中的某些单元格有炸弹该程序应在该单元中打印*
。 和其他单元格应该在八个周边单元格中打印炸弹数 我不知道如何打印这个可以打印字符和数字的双重子脚本数组。我在类型转换中遇到了一些麻烦
#include <stdio.h>
#define max 100
int main()
{
int a,row,column,n,x,y,counter,i,j;
char table[max][max]={0};
scanf("%d%d",&row,&column);
scanf("%d",&n);
for(i=1;i<=n;i++)
{
scanf("%d%d",&x,&y);
table[x-1][y-1]='*';
}
for(counter=0,i=0;i<row;i++)
{
for(j=0;j<column;j++)
{
if(table[i-1][j-1]=='*')
counter++;
if(table[i-1][j]=='*')
counter++;
if(table[i-1][j+1]=='*')
counter++;
if(table[i][j-1]=='*')
counter++;
if(table[i][j+1]=='*')
counter++;
if(table[i+1][j-1]=='*')
counter++;
if(table[i+1][j]=='*')
counter++;
if(table[i+1][j+1]=='*')
counter++;
if(table[i][j]!='*')
table[i][j]=counter;
counter=0;
}
}
for(counter=0,i=0;i<row;i++)
{
for(j=0;j<column;j++)
printf("%d ",(char)table[i][j]);
printf("\n");
}
}
在编程中没有**类型转换**! – haccks
更改printf(“%d”,(char)table [i] [j]);到printf(“%c”,(char)table [i] [j]);你会看到你的角色。 –
在你的'printf'中使用'“%c”'而不是'“%d”'。类型转换不是必需的。 –