武汉大学编译原理第二次作业
来源:互联网 发布:linux服务器设置ip地址 编辑:程序博客网 时间:2024/06/11 03:41
%{ #include <time.h>#include <stdlib.h>#include <stdio.h>int length;%}SEP (";"|";"|"."|"。"|","|","|","|"!"|"!"|"\""|"”"|":")%x STMT%%[^ \n\t\r] { if (rand() % 2 ) printf("尼玛"); unput(yytext[0]); length = 0; BEGIN(STMT); } [ \t\n\r] ;<STMT>{SEP}+[ \t]*(\n)*|{SEP}*[ \t]*(\n)+\r* { if (length <= 4) { printf("!!!!!"); } else { if (rand() % 3) printf( "!你伤不起啊!!!"); if (rand() % 3) printf( "!亲!!!!!"); if (rand() % 2) printf( "!有木有!!!!!"); } printf("!\n"); BEGIN(INITIAL); }<STMT>"我们" length += 2; printf ("咱们") ; <STMT>"我" length += 2; printf ("偶") ; <STMT>"什么" length += 4; printf ("神马");<STMT>"你" length += 2; printf ("泥");<STMT>"同志" length += 4; printf ("筒子");<STMT>"院士" length += 4; printf ("猿士");<STMT>"同学" length += 4; printf ("童鞋");<STMT>"教授" length += 4; printf ("叫兽");<STMT>"的" length += 2; printf ("滴");<STMT>"人才" length += 4; printf ("淫才");<STMT>[\x81-\xfe][\x40-\xfe] length +=2; ECHO;<STMT>. length++; ECHO;%%main( int argc, char **argv ){ ++argv, --argc; if ( argc > 0 ) { if ((yyin = fopen( argv[0], "rb" )) == NULL) { printf("the file %s could'nt open!\n", argv[0]); exit (1); } } else yyin = stdin; srand((int)time(0)); yylex(); fclose(yyin); return 0;}int yywrap(){ return 1;}
0 0
- 武汉大学编译原理第二次作业
- 武汉大学编译原理第一次作业
- 武汉大学编译原理第三次作业
- 武汉大学编译原理第五次作业
- 武汉大学编译原理第4次作业
- 编译原理第二次试验
- 第二次作业-在linux下编译
- 编译原理作业小结
- 编译原理作业有感
- 编译原理第一次作业
- 编译原理第一次作业
- 2013武汉大学图形学大作业
- 武汉大学2013linux大作业
- 第二次作业
- 第二次作业
- 第二次作业
- 第二次作业
- 第二次作业
- 图像特征LBP原理及C++实现
- 第十一章 Vim之宏的使用
- VC 粘贴 CF_METAFILEPICT 格式 MetaFile
- 单例模式 Singleton
- hibernate一级缓存和二级缓存
- 武汉大学编译原理第二次作业
- EJB是啥?
- 第十二章 Vim之按模式匹配和按原义匹配
- 关于大数(阶乘的位数)三种方法
- php-fpm和fastcgi之间的关系
- SQL server 2008
- cocosstudio 出现项目由更新版本编辑器产生 无法打开的解决方法
- 如何选择开源许可证
- canvas_danmaku