加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

如何在二维数组中的某个位置显示一个字符?

发布时间:2020-12-16 03:39:19 所属栏目:百科 来源:网络整理
导读:我想清楚,是的这是一个与家庭作业相关的问题,不,我不指望你为我做功课.我喜欢编码,我只是在寻求建议. 话虽如此,我是用C创建生命游戏.这里有一些代码可以显示我一直在研究这个问题: void create_area(void){int table[24][80];int i,j;int xvalue=10,yvalue=
我想清楚,是的这是一个与家庭作业相关的问题,不,我不指望你为我做功课.我喜欢编码,我只是在寻求建议.

话虽如此,我是用C创建生命游戏.这里有一些代码可以显示我一直在研究这个问题:

void create_area(void){
int table[24][80];
int i,j;
int xvalue=10,yvalue=10;
table[10][10] = 2;


/*for(j=0; j<24; j++){
    for(i=0; i<80; i++){
        table[j][i] = 1;
    }
}*/

for(j=0; j<24; j++){
    for(i=0; i<80; i++){
        printf(" ",table[j][i]);
    }
    printf("n");
}

/*if(xvalue=10){
    if(yvalue=10){
        printf("O",table[xvalue][yvalue]);
    }
}*/

/*for(j=0; j<24; j++){
    for(i=0; i<80; i++){
        if(xvalue=0){
            if(yvalue=0){
                printf("O",table[xvalue][yvalue]);
            }
        }
    }
}*/
}

我的主要方法没有在这里显示,但是它负责查找参数和参数字符串的数量,并将它们放入我使用的两个数组(x_array和y_array)的坐标中.上面显示的方法基本上是在终端中创建网格. create_area的参数现在是无效的(因为我只想测试值以查看它是否有效,这就是为什么我有两个int变量:xvalue和yvalue).但想法是create_area将采用x值和y值并初始化单元格将开始的字符“O”.很多代码都被注释掉了,因为我正在尝试解决问题.

我的问题:如何在我的2d数组中插入一个字符,以便在终端中查看时在网格上的某个位置显示该字符?

到目前为止,我创建了我的2d数组,并使用两个for循环来遍历它并打印空间.但我正在试图弄清楚如何在表[10] [10]中打印一个字符.我尝试了一些东西,但角色不会显示在特定位置,只显示在屏幕的左下角.我想我错过了一些简单的事情.

任何帮助,将不胜感激.

解决方法

如果要表示字符网格,则应使用数据类型char而不是int和字符常量(例如“1”)而不是整数常量(例如1).然而,主要问题是声明printf(“”,table [j] [i]);当你错过格式字符串中的格式说明符时总是打印一个空格(例如,对于整数,“%d”,或对于字符数据类型,为“%c”).
我不知道你的网格究竟是什么样子,但是下面的片段可能会有所帮助:
void create_area(void){
  char table[24][80];
  int i,j;
  int xvalue=10,yvalue=10;

  for(j=0; j<24; j++){
    for(i=0; i<80; i++){
        table[j][i] = '1';
    }
  }

  table[10][10] = '0';

  for(j=0; j<24; j++){
    for(i=0; i<80; i++){
        printf("%c",table[j][i]);
    }
    printf("n");
  }
  ...

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读