game.h//这是头文件
#define ROW 3
#define COL 3
#include<stdio.h>
void display_board(char board[ROW][COL], int row, int col);
void initboard(char board[ROW][COL], int row, int col);
game.c //里面有定义
#include"game.h"
void initboard(char board[ROW][COL], int row, int col)
{
int i = 0;
int j = 0;
for (i = 0; i < row; i++)
{
for (j = 0; j < col; j++)
{
board[row][col] = ' '
}
}
}
void displayed_board(char board[ROW][COL], int row, int col)
{
int a = 0;
int b = 0;
for (a = 0; a < row; a++)
{
for (b = 0; b < col; b++)
{
printf(" %c ", board[a][b]);
if (b < col - 1)
printf("|");
}
printf("\n");
if (a < row - 1)
{
for (b = 0; b < col; b++)
{
printf("---");
if (b < col - 1)
printf("|");
}
printf("\n");
}
}
}
test.c //测试
#include"game.h"
//#include"game.c"
void menu()
{
printf("***************************************\n");
printf("***** 1.PLAY 0.EXIT ****\n");
printf("***************************************\n");
}
void game()
{
char board[ROW][COL] = { 0 };
initboard(board, ROW, COL);
displayed_board(board, ROW, COL);
}
int main()
{
menu();
int input = 0;
scanf_s("%d", &input);
do
{
switch (input)
{
case 1:
printf("三子棋=>\n");
game();
break;
case 2:
printf("输入错误!\n");
break;
default:
break;
}
} while (0);
return 0;
}
#include"game.h"
//#include"game.c"
void menu()
{
printf("***************************************\n");
printf("***** 1.PLAY 0.EXIT ****\n");
printf("***************************************\n");
}
void game()
{
char board[ROW][COL] = { 0 };
initboard(board, ROW, COL);
displayed_board(board, ROW, COL);
}
int main()
{
menu();
int input = 0;
scanf_s("%d", &input);
do
{
switch (input)
{
case 1:
printf("三子棋=>\n");
game();
break;
case 2:
printf("输入错误!\n");
break;
default:
break;
}
} while (0);
return 0;
}
#include"game.h"
//#include"game.c"
void menu()
{
printf("***************************************\n");
printf("***** 1.PLAY 0.EXIT ****\n");
printf("***************************************\n");
}
void game()
{****
char board[ROW][COL] = { 0 };
initboard(board, ROW, COL);
displayed_board(board, ROW, COL);
}//这里显示错误 Run-Time Check Failure #2 - Stack around the variable 'board' was corrupted.
int main()
{
menu();
int input = 0;
scanf_s("%d", &input);
do
{
switch (input)
{
case 1:
printf("三子棋=>\n");
game();
break;
case 2:
printf("输入错误!\n");
break;
default:
break;
}
} while (0);
return 0;
}
#include"game.h"
void menu()
{
printf("***************************************\n");
printf("***** 1.PLAY 0.EXIT ****\n");
printf("***************************************\n");
}
void game()
{
char board[ROW][COL] = { 0 };
initboard(board, ROW, COL);
displayed_board(board, ROW, COL);
}
int main()
{
menu();
int input = 0;
scanf_s("%d", &input);
do
{
switch (input)
{
case 1:
printf("三子棋=>\n");
game();
break;
case 2:
printf("输入错误!\n");
break;
default:
break;
}
} while (0);
return 0;
}
这是栈溢出吗? 怎么就溢出来 把行和列换成3以上的数才行 求指点 一个三子棋的代码 (还未写完)
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- George_hacker 2021-08-16 22:57关注
如果是3以下的数的话不数组不就越界了嘛,三子棋嘛,行列都为3啊,数组下标是从0开始的,你那个for循环用的又是<,3的话不就正好执行3次吗?
解决 无用评论 打赏 举报
悬赏问题
- ¥15 如何用MATLAB实现以下三个公式(有相互嵌套)
- ¥50 安装华大九天aether
- ¥30 关于#算法#的问题:运用EViews第九版本进行一系列计量经济学的时间数列数据回归分析预测问题 求各位帮我解答一下
- ¥15 setInterval 页面闪烁,怎么解决
- ¥15 如何让企业微信机器人实现消息汇总整合
- ¥50 关于#ui#的问题:做yolov8的ui界面出现的问题
- ¥15 如何用Python爬取各高校教师公开的教育和工作经历
- ¥15 TLE9879QXA40 电机驱动
- ¥20 对于工程问题的非线性数学模型进行线性化
- ¥15 Mirare PLUS 进行密钥认证?(详解)