当前位置: 首页 > news >正文

网站整体风格设计企业网站做的好的有什么公司

网站整体风格设计,企业网站做的好的有什么公司,扫黄打非网站建设,张家界网站制作公司一、题目要求 题目#xff1a; 选择部分C语言的语法成分#xff0c;设计其词法分析程序、语法语义分析程序。 要求#xff1a; 设计并实现一个一遍扫描的词法语法语义分析程序#xff0c;将部分C语言的语法成分#xff08;包含赋值语句、if语句、while循环语句#xf…一、题目要求 题目 选择部分C语言的语法成分设计其词法分析程序、语法语义分析程序。 要求 设计并实现一个一遍扫描的词法语法语义分析程序将部分C语言的语法成分包含赋值语句、if语句、while循环语句翻译成三地址代码要求有一定的出错提示和错误恢复功能。 二、源码  #include stdio.h #include string.h #include stdlib.h#define BUFFSIZE 5000 char prog[BUFFSIZE],token[8]; char ch,ch1; int syn,p,q,m,n,sum,i1,k0,kk,flag0; char *rwtab[32]{main,break,case,char,define,continue,default,do,double,else,what,extern,float,for,goto,if,int,long,stack,return,short,fopen,sizeof,static,struct,switch,typedef,enum,unsigned,void,fclose,while};int main() /*主函数*/ {void scaner();int lrparser();FILE *fp;if((fpfopen(test.txt,r))NULL){ printf(无法打开文件\n);exit(1);}p0;while(!feof(fp)){ prog[p]fgetc(fp);if(p5000){ printf(缓冲区容量不够!\n);exit(1);}}/*把文件test中的内容存入数组prog中*/fclose(fp);printf(%s\n,prog);p0; printf(输出词法分析结果\n);do{scaner();switch(syn){case 34:printf((%d,%d),,syn,sum);break;case -1:printf(error,);break;default:printf((%d,%s),,syn,token);}}while(syn!0);p0;printf(\n语法语义的分析开始\n);scaner();lrparser();system(pause);return 0; }void scaner() {for(n0;n8;n) token[n]NULL;m0;sum0;chprog[p];while(ch ||ch\n){ p;chprog[p];}/*读下一个字符*/if((chAchZ)||(chachz)){ while((chAchZ)||(chachz)||(ch0ch9)){ token[m]ch;m;p;chprog[p];}token[m]\0;syn33;for(n0;n32;n)if(strcmp(token,rwtab[n])0){ synn1;break;}}/*判断输入字符是否为标识符或者关键字的情况*/elseif(ch0ch9){ while(ch0ch9){ sumsum*10ch-0;p;chprog[p];}syn34;}/*判断输入字符是否为整型常数的情况*/elseswitch(ch){case :token[m]ch;p;chprog[p];if(ch){ syn42;m;token[m]ch;p;}/*出现的情况*/else if(ch){ syn43;m;token[m]ch;p;}/*出现的情况*/else{ syn41;}break;case :token[m]ch;p;chprog[p];if(ch){ syn45;m;token[m]ch;p;}/*出现的情况*/else{syn44;}break;case ::token[m]ch;p;chprog[p];if(ch){ syn40;m;token[m]ch;p;}/*出现:的情况*/else{syn39;}break;case /:token[m]ch;p;chprog[p];if(ch*){ syn51;q0;m;token[m]ch;p;qp1;while(prog[p]!*||prog[q]!/){p;q;}}/*出现注释/*的情况*/else{syn38;}break;case *:token[m]ch;p;chprog[p];if(ch/){ syn52;m;token[m]ch;p;}else{syn37;}break;case :syn35;token[0]ch;p;break;case -:syn36;token[0]ch;p;break;case :syn46;token[0]ch;p;break;case ;:syn47;token[0]ch;p;break;case (:syn48;token[0]ch;p;break;case ):syn49;token[0]ch;p;break;case %:syn50;token[0]ch;p;break;case {:syn53;token[0]ch;p;break;case }:syn54;token[0]ch;p;break;case ,:syn55;token[0]ch;p;break;case #:syn0;token[0]ch;p;break;default:syn-1;}}void emit(char *result,char *ag1,char *op,char *ag2) {printf((%d) %s%s%s%s\n,i,result,ag1,op,ag2);i;return; }char *newtemp(void) {char *p;char m[8];p(char *)malloc(8);k;itoa(k,m,10);strcpy(p1,m);p[0]t;return(p); }int lrparser() { int yucu();int schain0;kk0;if(syn!1){printf(缺main错误\n);flag;}scaner();if(syn!48){printf(main后缺括号\n);flag;}else scaner();if(syn!49){printf(main后缺)括号\n);flag;}else scaner();if(syn!53){printf(main后缺{括号\n);flag;}else scaner();schainyucu();if(syn54){ scaner();if(syn0kk0flag0)/*kk是用来记录其他错误的标识*/printf(语法与语义分析结束。分析结果为success\n);elseprintf(程序存在着%d个错误\n,flag);}else{if(kk!1)printf(缺}错误);kk1;}return(schain); }int yucu() {int statement();int schain0;schainstatement();while(syn47){ scaner();schainstatement();}return(schain); }int statement() {char *expression();char tt[8],eplace[8];int schain0;switch(syn){ case 33:strcpy(tt,token);scaner();if(syn46){ scaner();strcpy(eplace,expression());emit(tt,eplace, , );schain0;}else{printf(赋值号错误);kk1;}return(schain);break;} }char *expression(void) { char *term();char *tp,*ep2,*eplace,*tt;tp(char *)malloc(12);ep2(char *)malloc(12);eplace(char *)malloc(12);tt(char *)malloc(12);strcpy(eplace,term());while(syn35||(syn36)){ strcpy(tt,token);scaner();strcpy(ep2,term());strcpy(tp,newtemp());emit(tp,eplace,tt,ep2);strcpy(eplace,tp);}return(eplace); }char *term(void) {char *factor();char *tp,*ep2,*eplace,*tt;tp(char *)malloc(12);ep2(char *)malloc(12);eplace(char *)malloc(12);tt(char *)malloc(12);strcpy(eplace,factor());while(syn37||(syn38)){ strcpy(tt,token);scaner();strcpy(ep2,factor());strcpy(tp,newtemp());emit(tp,eplace,tt,ep2);strcpy(eplace,tp);}return(eplace); }char *factor(void) {char *fplace;fplace(char *)malloc(12);strcpy(fplace, );if(syn33){strcpy(fplace,token);scaner();}else if(syn34){itoa(sum,fplace,10);scaner();}else if(syn48){scaner();fplaceexpression();if(syn49)scaner();else{printf(缺‘)’错误!!\n);kk1;flag;}}else{printf(表达式错误\n);kk1;flag;}return(fplace); }
http://www.hkea.cn/news/14377377/

相关文章:

  • 郑州网站优化托管关于公司申请建设门户网站的请示
  • 重庆市建设工程造价站做的网站图片不显示
  • 如何从零开始做网站丝芭传媒有限公司
  • 登封做网站优化wordpress关闭邮箱验证码
  • 信息设计网站网站建设金思扬网络
  • 山东建设厅官方网站二建报名路得威网站谁做的
  • 那个可以做棋牌网站维护公司
  • 网站备案资质网站广告牌制作教程
  • 模板做网站上传专门做医疗器械的网站
  • 个人网站的制作模板广告网络
  • 响应式网站视频网站做百度地图怎么做呢
  • 爱站小工具计算器长沙弧度seo
  • 福千欣隆网站建设公司怎么样长春seo公司网站
  • 制作钓鱼网站企业官网模板站
  • 做网站应该学什么语言最近发生的重大新闻
  • 福州市网站中国建筑协会官网证件查询
  • 北京网站开发网站 建设 汇报
  • 苏州网站建设logo抖音代运营费用大概多少
  • 唐汉网站建设成都网约车平台公司哪家好
  • 如何建立自己的商城网站wordpress contact 伪静态
  • 社交做的最好的网站做有后台的网站
  • 公司做的网站如何开启伪静态怎么做云购网站吗
  • 做推广必须知道的网站吗通栏网站
  • 做网站费用需要分摊吗商城网站开发视频
  • 前端网站做中 英文可以做哪些有趣的网站
  • 建设门户网站价格零点研究咨询集团官方网站建设
  • 网站开发 私活wordpress 4.8 中文包
  • 做网站赚多少四川省建设工程交易中心网站
  • 站酷网站建设只做恐怖片的网站
  • 网站 自适应jsking wordpress theme