codeblocks编的C++程序可以编译,但是运行什么都不显示,回车就退出了

源码.h.cpp都在百度网盘http://pan.baidu.com/share/link?shareid=350649472&uk=404681303... 源码 .h .cpp都在百度网盘
http://pan.baidu.com/share/link?shareid=350649472&uk=404681303
展开
 我来答
WM_THU
2013-06-29 · TA获得超过7164个赞
知道大有可为答主
回答量:4285
采纳率:80%
帮助的人:3945万
展开全部

main函数里初始化棋盘是这样写的

for(i=0; i<=N; i++)
{
    for(j=0; j<=N; j++)
    {
         qipan.name[i][j]=0;
    }
}

这回造成数组访问越界。应该写作i<N和j<N。

追问
运行是可以了,不过到下棋那一步又出现问题了,能帮忙改一下吗?
追答
Qipan::win()函数中“判断右到左斜方向是否有5个”的三重循环里,最内层循环写错为“k=5”了,应该是"k<5"。
还有output函数,在没有人赢棋的时候会返回未赋值的win。建议去掉第二个参数win,(即int output(int count[8]))然后第一行改为int i,j, win=1;其余不动。
还有 你win函数的整体逻辑有问题,四种情形顺序判断并覆盖前一种情形的output返回值,最终等效于只返回最后一种情形的win值。但实际上应该是一旦有一个情形win是0就返回0。这个你可以自己改一下。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式