| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1687 人关注过本帖
标题:求解char型二维数组内部符号替换的问题
只看楼主 加入收藏
hushuncheng
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2016-10-9
结帖率:25%
收藏
 问题点数:0 回复次数:11 
求解char型二维数组内部符号替换的问题
char a[7][6] =
    {
        { '~','~','~','~','~','~' },
        { '~','~','~','~','~','~' },
        { '~','~','~','~','~','~' },
        { '~','~','~','~','~','~' },
        { '~','~','~','~','~','~' },
        { '~','~','~','~','~','~' },
        { '~','~','~','~','~','~' }
    };
    char W = '●', B = '¤';
    int i, j;
    printf("   1    2    3    4    5    6    7 \n");
    for (i = 0; i < 6; i++)
    {
        for (j = 0; j < 7; j++)
            printf("%4c ", a[j][i]);
        printf("\n");
    }

想通过判断选择行后用'●'or'¤'去替换相应位置最下面的'~',应该怎么替换呢?

2016-11-26 11:48
bjut_Allen
Rank: 9Rank: 9Rank: 9
来 自:平乐园工业技术学校
等 级:蜘蛛侠
威 望:8
帖 子:323
专家分:1223
注 册:2016-10-16
收藏
得分:0 
a[7][6]是声明一个二维数组,可以看成7行6列,应改为以下赋值
 printf("   1    2    3    4    5    6  \n");
for (i = 0; i < 7; i++)
    {
        for (j = 0; j < 6; j++)
            printf("%4c ", a[i][j]);
        printf("\n");
    }
想替换元素,还是通过循环来进行。

[此贴子已经被作者于2016-11-26 12:56编辑过]


Code is my life.
2016-11-26 12:04
天丛云
Rank: 2
等 级:论坛游民
帖 子:48
专家分:50
注 册:2016-11-8
收藏
得分:0 
回复 2楼 bjut_Allen
这个是七列六行吧。
2016-11-26 12:28
hushuncheng
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2016-10-9
收藏
得分:0 
回复 3楼 天丛云
对的,是7列6行
2016-11-26 12:37
hushuncheng
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2016-10-9
收藏
得分:0 
回复 2楼 bjut_Allen
那应该通过怎样的循环来改最下面那一的元素呢?
2016-11-26 12:37
bjut_Allen
Rank: 9Rank: 9Rank: 9
来 自:平乐园工业技术学校
等 级:蜘蛛侠
威 望:8
帖 子:323
专家分:1223
注 册:2016-10-16
收藏
得分:0 
回复 3楼 天丛云
应该是7行6列。。

[此贴子已经被作者于2016-11-26 12:56编辑过]


Code is my life.
2016-11-26 12:50
bjut_Allen
Rank: 9Rank: 9Rank: 9
来 自:平乐园工业技术学校
等 级:蜘蛛侠
威 望:8
帖 子:323
专家分:1223
注 册:2016-10-16
收藏
得分:0 
回复 3楼 天丛云
你想把最后一行~~~~~~~ 改成全是黑色圈圈,那就可以
for(j=0;j<6;j++)
{
 a[6][j]=W;
}
但是那个黑色圈圈那个字符不确定可以识别出来。。

Code is my life.
2016-11-26 12:53
hushuncheng
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2016-10-9
收藏
得分:0 
回复 7楼 bjut_Allen
不是最后一行,是选择1-7中一列后,把那一列最下面一个‘~’转换为另外一个符号,感觉需要清屏然后再输入
2016-11-26 13:08
bjut_Allen
Rank: 9Rank: 9Rank: 9
来 自:平乐园工业技术学校
等 级:蜘蛛侠
威 望:8
帖 子:323
专家分:1223
注 册:2016-10-16
收藏
得分:0 
回复 8楼 hushuncheng
#include <stdio.h>
int main(){
    char a[7][6] =
    {
        { '~','~','~','~','~','~' },
        { '~','~','~','~','~','~' },
        { '~','~','~','~','~','~' },
        { '~','~','~','~','~','~' },
        { '~','~','~','~','~','~' },
        { '~','~','~','~','~','~' },
        { '~','~','~','~','~','~' }
    };
    char W = '!';
    int i, j;
    printf("   1    2    3    4    5    6 \n");
    for (i = 0; i < 7; i++)
    {
        for (j = 0; j < 6; j++)
            printf("%4c ", a[i][j]);
        printf("\n");
    }
    int line;
    printf("输入你想更改的列数(1-6):");
    scanf("%d",&line);
    a[6][line-1]=W;
    printf("   1    2    3    4    5    6 \n");
    for (i = 0; i < 7; i++)
    {
        for (j = 0; j < 6; j++)
            printf("%4c ", a[i][j]);
            printf("\n");
    }
    return 0;
}
我用'!'代替你的黑圈了,而且只有六列,如果想6行7列应声明char a[6][7];

Code is my life.
2016-11-26 13:29
hushuncheng
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2016-10-9
收藏
得分:0 
回复 9楼 bjut_Allen
恩恩,谢谢大侠~~
2016-11-26 14:05
快速回复:求解char型二维数组内部符号替换的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.088481 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved