第九周学习总结

Posted dawan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第九周学习总结相关的知识,希望对你有一定的参考价值。

#include <stdio.h>
#include <time.h>
#include <string.h>
#include <windows.h>
#include <conio.h>
int exp=0;
static char num[233][2];
int find0()
{
int exp1,x;
for(exp1=0;num[exp1][0]!=‘‘;exp1++)
x=exp1;
return x;
}
void clear_hanio()//将汉诺塔的数组缓存初始化
{
int exp1,exp2;
for(exp1=0;num[exp1][0]!=‘‘;exp1++)
for(exp2=0;exp2<2;exp2++)
num[exp1][exp2]=‘‘;
}
void hanio(int n,char a,char b,char c)//电脑计算正确答案(汉诺塔)
{
if(n==1)
{
num[exp][0]=a;
num[exp][1]=c;
exp++;
}
else if(n>1)
{
hanio(n-1,a,c,b);
num[exp][0]=a;
num[exp][1]=c;
exp++;
hanio(n-1,b,a,c);
}
}
int main()
{
void hanio_text();
hanio_text();
return 0;
}
void hanio_text()
{
void hanio_start_2();
void hanio_gz();
void text();
int start;
printf(" **************************************************** ");
printf(" * 汉诺塔 * ");
printf(" * * ");
printf(" * 1.开始游戏 * ");
printf(" * 2.规则 * ");
printf(" * * ");
printf(" * * ");
printf(" **************************************************** ");
rehanio_text:
scanf("%d",&start);
if(start==1)
hanio_start_2();
else if(start==2)
hanio_gz();
else
{
printf("输入错误,请再次输入。 ");
goto rehanio_text;
}
}
void hanio_gz()
{
void hanio_text();
int x;
printf(" **************************************************** ");
printf(" * 规则 * ");
printf(" * * ");
printf(" * 1.有三根相邻的柱子,标号为a,b,c。 * ");
printf(" *2.a柱子上从下到上按金字塔叠放着n个不同大小的碟子。* ");
printf(" * 3.现在把所有的碟子一个一个移动到柱子c上。 * ");
printf(" * 4.大碟子不能放在小碟子上方。 * ");
printf(" * 5.本游戏仅可运行一次 * ");
printf(" * 6.返回上一界面 * ");
printf(" **************************************************** ");
rehanio_gz:
scanf("%d",&x);
if(x==6)
hanio_text();
else
{
printf("输入错误,请再次输入。 ");
goto rehanio_gz;
}
}
void hanio_start_2()
{
void hanio_text();
void hanio(int,char,char,char);
char yas[233][2],a=‘a‘,b=‘b‘,c=‘c‘;
int n,m;
int exp1;
rehanio_start_2:
int exp11,exp22;//初始化yas
for(exp11=0;yas[exp11][0]!=‘‘;exp11++)
for(exp22=0;exp22<2;exp22++)
yas[exp11][exp22]=‘‘;
printf("请输入碟子的数量:");//开始运行
scanf("%d",&n);
printf("游戏开始 格式为a-->c ");
clear_hanio();
hanio(n,a,b,c);
for(exp1=0;num[exp1][0]!=‘‘;exp1++)
{
scanf(" %c-->%c",&yas[exp1][0],&yas[exp1][1]);
getchar();
}
for(exp1=0;num[exp1][0]!=‘‘;exp1++)
{
if(num[exp1][0]!=yas[exp1][0]||num[exp1][1]!=yas[exp1][1])
{
printf("你输掉了本场游戏。 ");
reuse11:
printf("1.再次挑战 2.返回上一界面 ");
scanf("%d",&m);
if(m==1)
goto rehanio_start_2;
else if(m==2)
hanio_text();
else
{
printf("输入错误,请再次输入。 ");
goto reuse11;
}
}
}
printf("恭喜你闯关完成。 ");
hanio_text();
}

 

 

顺手运用递归做了个游戏(bug有点多)

以上是关于第九周学习总结的主要内容,如果未能解决你的问题,请参考以下文章

20165316 第九周学习总结

20165210 Java第九周学习总结

20165222——第九周学习总结

20165232 第九周学习总结

20165225《Java程序设计》第九周学习总结

Java第九周学习总结