首 页 行业热点 新车 试驾评测 养车用车 车型库

c语言将英文数字转换成阿拉伯数字

发布网友 发布时间:2022-04-20 18:12

我来回答

3个回答

热心网友 时间:2022-04-19 01:29

不能用状态机吗?比如扫描到一个字符,则跟规则比较一下。主要是把0-9还有点的因为字母都写出来,然后构建状态转移表,每次扫描一个字符,进行状态迁移。很容易就得到结果了。

当然暴力匹配的方法也可以的。就是每次拿10个英文字母跟开头的比较,然后逐步识别就好了。

热心网友 时间:2022-04-19 02:47

状态机的方式可用
char str[11]="onetwothree";
void fun()
{
int i;
int idle;//状态变量
for(i=0;i<11;i++)
{
switch(str[i]){
case 'o' :idle=1;break;
case 't' :idle=2;break;
defaut :idle=0;break;
}
switch(idle){
case 1:if(str[i+1]=='n'&&str[i+2]=='e') printf("1");break;
case 2:
{
if(str[i+1]=='w'&&str[i+2]=='o') printf("2");
else if(str[i+1]=='h'&&str[i+2]=='r'&&str[i+3]=='e'&&str[i+4]=='e') printf("3");
}break;

}

}

热心网友 时间:2022-04-19 04:22

有多少个数字啊?只有1-9?还是任意一个数啊?

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com