谁是C语言设计高手啊?
答案:4 悬赏:10 手机版
解决时间 2021-04-29 03:30
- 提问者网友:無理詩人
- 2021-04-28 05:46
谁是C语言程序高手额?我有一些题不会额。。麻烦加我Q告诉我下好么??谢谢啊。。。
最佳答案
- 五星知识达人网友:鸽屿
- 2021-04-28 06:18
晕,把题目写上,不然太麻烦,还涉及违规
全部回答
- 1楼网友:山有枢
- 2021-04-28 08:12
我爱你 呵呵爱很伟大
- 2楼网友:你可爱的野爹
- 2021-04-28 07:24
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_STEP 20
//index: 0 - 狼,1-羊,2-菜,3-农夫,value:0-本岸,1-对岸
int a[MAX_STEP][4];
int b[MAX_STEP];
char *name[] =
{
"空手",
"带狼",
"带羊",
"带菜"
};
void search(int iStep)
{
int i;
if (a[iStep][0] + a[iStep][1] + a[iStep][2] + a[iStep][3] == 4)
{
for (i = 0; i < iStep; i++)
{
if (a[i][3] == 0)
{
printf("%s到对岸\n", name[b[i] + 1]);
}
else
{
printf("%s回本岸\n", name[b[i] + 1]);
}
}
printf("\n");
return;
}
for (i = 0; i < iStep; i++)
{
if (memcmp(a[i], a[iStep], sizeof(a[i])) == 0)
{
return;
}
}
if (a[iStep][1] != a[iStep][3] && (a[iStep][2] == a[iStep][1] || a[iStep][0] == a[iStep][1]))
{
return;
}
for (i = -1; i <= 2; i++)
{
b[iStep] = i;
memcpy(a[iStep + 1], a[iStep], sizeof(a[iStep + 1]));
a[iStep + 1][3] = 1 - a[iStep + 1][3];
if (i == -1)
{
search(iStep + 1);
}
else if (a[iStep][i] == a[iStep][3])
{
a[iStep + 1][i] = a[iStep + 1][3];
search(iStep + 1);
}
}
}
int main()
{
search(0);
return 0;
}
- 3楼网友:玩家
- 2021-04-28 07:18
还是把题目贴这里吧,这里人气比较旺,得到正确答案的可能性大些 ^_^
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯