zoukankan      html  css  js  c++  java
  • D

      1 #include <string.h>
      2 #include <stdio.h>
      3 #include <stdlib.h>
      4 char str[100];
      5 int c,num;
      6 void E();
      7 void G();
      8 void T();
      9 void S();
     10 void F();
     11 int main()
     12 {
     13     scanf("%s",str);
     14     E();
     15     if(str[c]=='#')
     16         printf("accept
    ");
     17     else
     18         printf("error
    ");
     19         return 0;
     20     }
     21 void E()
     22 {
     23     if(str[c]=='('||str[c]=='i')
     24     {
     25         printf("%d E-->TG
    ",num);
     26         num++;
     27         T();
     28         G();
     29     }
     30     else
     31     {
     32         printf("error
    ");
     33         exit(0);
     34     }
     35 }
     36 
     37 void G()
     38 {
     39     if(str[c]=='+')
     40     {
     41         c++;
     42         printf("%d G-->+TG
    ",num);
     43         num++;
     44         T();
     45         G();
     46     }
     47     else
     48     {
     49         printf("%d G-->&
    ",num);
     50         num++;
     51     }
     52 }
     53 
     54 void T()
     55 {
     56     if(str[c]=='('||str[c]=='i')
     57     {
     58         printf("%d T-->FS
    ",num);
     59         num++;
     60         F();
     61         S();
     62     }
     63     else
     64     {
     65         printf("error
    ");
     66         exit(0);
     67     }
     68 }
     69 void S()
     70 {
     71     if(str[c]=='*')
     72     {
     73         c++;
     74         printf("%d S-->*FS
    ",num);
     75         num++;
     76         F();
     77         S();
     78     }
     79     else
     80     {
     81         printf("%d S-->&
    ",num);
     82         num++;
     83     }
     84 }
     85 void F()
     86 {
     87     if(str[c]=='(')
     88     {
     89         c++;
     90         printf("%d F-->(E)
    ",num);
     91         num++;
     92         E();
     93         if(str[c]==')')
     94         {
     95             c++;
     96         }
     97         else
     98         {
     99             printf("error
    ");
    100             exit(0);
    101         }
    102     }
    103     else if (str[c]=='i')
    104     {
    105         c++;
    106         printf("%d F-->i
    ",num);
    107         num++;
    108     }
    109     else
    110     {
    111         printf("error
    ");
    112         exit(0);
    113     }
    114 }
  • 相关阅读:
    今年要读的书
    java多线程
    json-lib 使用教程
    tomcat原理
    静态long类型常量serialVersionUID的作用
    使用junit4测试Spring
    MySQL各版本的区别
    spring mvc 下载安装
    hibernate、struts、spring mvc的作用
    【面试】hibernate n+1问题
  • 原文地址:https://www.cnblogs.com/Angfe/p/15429056.html
Copyright © 2011-2022 走看看