- 标题:贪吃蛇长度
±------------------------------------------------+
| |
| H###### #### |
| # # # |
| # # # |
| # #### # # |
| # # # # # |
| ######@### # # |
| # #### # # |
| # # # # # |
| ####@#######@### # # |
| # # # # # |
| T ##### # # # ## |
| # # ### ### ## |
| ################ # # #### |
| # # # # |
| ############## #######@########## |
| # ### |
| ########################### |
±------------------------------------------------+
小明在爷爷的私人收藏馆里找到一台老式电脑。居然没有图形界面,只能用控制台编程。经过小明的一阵摸索,神奇地设计出了控制台上的贪食蛇游戏。
如上图,是游戏时画面截图。 其中,H表示蛇头,T表示蛇尾。#表示蛇的身体,@表示身体交叉重叠的地方。 你能说出现在的贪吃蛇长度是多少吗? 其实,只要数出#的数目算1,数出@的数目,算2,再加上头尾各算1就计算好了。 人工数一下?太累眼睛了,聪明的你为什么不让计算机帮忙呢? 本题的要求就是: 请填写上图中贪食蛇的长度是多少?
思路:把上图字符保存到记事本,用记事本替换功能除去无关字符,保存即可。
#include<stdio.h>
#include<stdlib.h>
int main()
{
FILE *fp;
char ch;
int count=0;
if((fp=fopen("abc.txt","r"))==NULL)
{
printf("Can not open this file!\n");
exit(0);
}
while((ch=fgetc(fp))!=EOF)
{
if(ch=='#'||ch=='H'||ch=='T')
{
count++;
}
else if(ch=='@')
{
count+=2;
}
}
printf("%d",count);
fclose(fp);
return 0;
}
``//答案190`