📄 linmin.c
字号:
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
void playA();
void playB();
void playD();
char ch;
char state='A';
void main()
{
int j;
int i=0;
char str[100];
printf("请输入一个字符串: ");
scanf("%s",&str);
j=strlen(str)-1;
for(i=0;i<=j;i++)
{
ch=str[i];
putchar(ch);
switch(state)
{
case 'A':
playA();break;
case 'B':
playB();break;
case 'D':
playD();break;
}
}
printf(" 你可以达到的终点为 %c,",state);
if (state=='D')
{
printf("你输入的字符串是可以通的并能到达 D*!\n\n");
}
else if(state=='A'||state=='B')
{
printf(" 路径能通但不能到达D* !\n\n");
}
else
{
printf(" %c 是不通的!程序退出\n\n",str[i-1]);
exit(0);
}
}
void playA()
{
switch(ch)
{
case 'a':
state='B';
break;
case 'b':
state='A';
break;
default:
state='k'; //如果路径不通则将STATE设为f;
}
}
void playB()
{
switch(ch)
{
case 'a':
state='B';
break;
case 'b':
state='D';
break;
default:
state='f'; //如果路径不通则将STATE设为f;
}
}
void playD()
{
switch(ch)
{
case 'a':
state='B';
break;
case 'b':
state='A';
break;
default:
state='f'; //如果路径不通则将STATE设为f;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -