zoukankan      html  css  js  c++  java
  • 12.03自动机实验

    #include<stdio.h>
    #define MAX 100
    typedef struct //构造一个邻接表 用于存储NFA
    {
    char name;
    char line[MAX];

    }node;


    void tran(){ //专门做语句的转换操作



    }

    void automata(char R[],int i){
    int j = 0;
    int n = i;
    while(R[j] != '#'){
    if(R[i] == '(')
    {
    printf("//在这里是做把'()'里的字符串里的语句初步进行转换,进行递归分解");
    //在这里是做把'()'里的字符串里的语句初步进行转换,进行递归分解
    }
    else if(R[i] == '|'){
    printf("//在这里就是把A和B两个状态节点分成 语句1 | 语句2 分成两路连接");
    //在这里就是把A和B两个状态节点分成 语句1 | 语句2 分成两路连接
    }
    else if(R[i] == '*'){
    printf("//在这里就是把前一个状态节点进行自循环。");
    //在这里就是把前一个状态节点进行自循环。
    }
    else{
    //在这里进行一般的转换。
    printf("//在这里进行一般的转换");
    }


    j++;
    }

    }

    void main()
    {
    char R[MAX];
    int i=0;
    printf("请输入要转换的正规式: ");
    while(R[i-1] != '#'){
    scanf("%c",&R[i]);
    i++;
    }
    automata(R,i); //用于转换正规式。
    }

  • 相关阅读:
    Vue 项目目录结构分析
    Vue 项目环境搭建
    Vue 组件
    Vue 指令
    Vue 实例成员
    Django 静态文件
    MySQL 索引详解
    Django 请求生命周期
    18. 4Sum (JAVA)
    16. 3Sum Closest (JAVA)
  • 原文地址:https://www.cnblogs.com/hui1005039632/p/5017661.html
Copyright © 2011-2022 走看看