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

白云微网站建设二级建造师注册查询

白云微网站建设,二级建造师注册查询,鹰潭市城乡建设局老网站,网页友情链接1.分析组成 C语言的程序中#xff0c;有很单词多符号和保留字。一些单词符号还有对应的左线性文法。所以我们需要先做出一个单词字符表#xff0c;给出对应的识别码#xff0c;然后跟据对应的表格来写出程序 2.程序设计 程序主要有循环判断构成。不需推理即可产生的符号我…1.分析组成 C语言的程序中有很单词多符号和保留字。一些单词符号还有对应的左线性文法。所以我们需要先做出一个单词字符表给出对应的识别码然后跟据对应的表格来写出程序 2.程序设计 程序主要有循环判断构成。不需推理即可产生的符号我们可以把它包装在函数中返回值为对应的识别码即可。但是有线性文法的则需要单独的一遍推倒才可以得出词法分析结果。对于测试样例我们可以存储到txt文件中使用循环读写可以更高效的测试和输出词法分析结果。最终的结果我们用二元式的形式来表示存储在txt文件中 3.完整程序 #include stdio.h #include stdlib.h #include string.hint english(char ch) {if((ch a ch z) || (ch A ch Z)) return 1;else return 0; } int number(char ch) {if(ch 0 ch 9) return 1;else return 0; } int reserved(char str[]) {if(strcmp(str, void) 0) return 3;else if(strcmp(str, int) 0) return 4;else if(strcmp(str, float) 0) return 5;else if(strcmp(str, double) 0) return 6;else if(strcmp(str, if) 0) return 7;else if(strcmp(str, else) 0) return 8;else if(strcmp(str, for) 0) return 9;else if(strcmp(str, do) 0) return 10;else if(strcmp(str, while) 0) return 11;else if(strcmp(str, break) 0) return 12;else if(strcmp(str, return) 0) return 13;else return 1; } int symbol(char ch) {if(ch ;) return 14;else if(ch ,) return 15;else if(ch () return 16;else if(ch )) return 17;else if(ch {) return 18;else if(ch }) return 19;else if(ch [) return 20;else if(ch ]) return 21;else if(ch %) return 22;else if(ch ?) return 23;else if(ch :) return 24;else if(ch \) return 25;else if(ch \) return 26;else if(ch .) return 27;else return 0; }int main(){for(int i 1; i 4; i){char txt1[] test;char num[6];sprintf(num, %d.txt, i);strcat(txt1, num);char txt2[] analyze;sprintf(num, %d.txt, i);strcat(txt2, num);FILE *fp fopen(txt1, r);FILE *fw fopen(txt2, wt);int flag 0;char ch fgetc(fp); while(!feof(fp)) {char str[32];int j 0;if(ch || ch \t) {ch fgetc(fp);continue;}else if(ch \n){fprintf(fw, \n);ch fgetc(fp);continue;}else if(english(ch)) {str[j] ch;do{ch fgetc(fp);str[j] ch;}while(english(ch)||number(ch));str[j-1] \0;int id reserved(str);fprintf(fw, (%d, %s) , id, str);}else if(number(ch)) {str[j] ch;do{ch fgetc(fp);str[j] ch;}while(number(ch));str[j-1] \0;fprintf(fw, (2, %s) , str);}else if(symbol(ch) ! 0) {fprintf(fw, (%d, %c) , symbol(ch), ch);ch fgetc(fp);}else if(ch ) {ch fgetc(fp);if(ch ) {fprintf(fw, (29, ) );ch fgetc(fp);}else if(ch ) {fprintf(fw, (30, ) );ch fgetc(fp);}else fprintf(fw, (28, ) );}else if(ch ) {ch fgetc(fp);if(ch ) {fprintf(fw, (32, ) );ch fgetc(fp);}else if(ch ) {fprintf(fw, (33, ) );ch fgetc(fp);}else fprintf(fw, (31, ) );}else if(ch !) {ch fgetc(fp);if(ch ) {fprintf(fw, (35, !) );ch fgetc(fp);}else fprintf(fw, (34, !) );}else if(ch ) {ch fgetc(fp);if(ch ) {fprintf(fw, (37, ) );ch fgetc(fp);}else fprintf(fw, (36, ) );}else if(ch /) {ch fgetc(fp);if(ch *) {fprintf(fw, (Start annotate, /*) );do {ch fgetc(fp);if(ch *) {ch fgetc(fp);if(ch /) {fprintf(fw, (End annotate, */) );ch fgetc(fp);break;}}}while(1);}else if(ch /) {fprintf(fw, (annotate, //) );do {ch fgetc(fp);}while(ch ! \n);fprintf(fw, \n);ch fgetc(fp);}else if(ch ) {fprintf(fw, (39, /) );ch fgetc(fp);}else fprintf(fw, (38, /) );}else if(ch ) {ch fgetc(fp);if(ch ) {fprintf(fw, (41, ) );ch fgetc(fp);}else fprintf(fw, (40, ) );}else if(ch |) {ch fgetc(fp);if(ch |) {fprintf(fw, (43, ||) );ch fgetc(fp);}else fprintf(fw, (42, |) );}else if(ch ) {ch fgetc(fp);if(ch ) {fprintf(fw, (46, ) );ch fgetc(fp);}else if(ch ) {fprintf(fw, (45 ) );ch fgetc(fp);}else fprintf(fw, (44, ) );}else if(ch -) {ch fgetc(fp);if(ch ) {fprintf(fw, (49, -) );ch fgetc(fp);}else if(ch -) {fprintf(fw, (48, --) );ch fgetc(fp);}else fprintf(fw, (47, -) );}else if(ch *) {ch fgetc(fp);if(ch ) {fprintf(fw, (51, *) );ch fgetc(fp);}else fprintf(fw, (50, *) );}else if(ch \\) {ch fgetc(fp);if(ch n) {ch fgetc(fp);}}else {fprintf(fw, Undefined symbol!);printf(test%d: Undefined symbol!\n, i); flag 1;break;}}fclose(fp);fclose(fw);if(flag) continue;printf(test%d: Finish analyzing.\n, i);} } 4.测试运行 其中一个测试样例剩余的大家可以自主编写  void test1() {int a 5, b 10;if (a b) {printf(a is greater than b);} else if (a b) {printf(b is greater than a);} else {printf(a and b are equal);}for (int i 0; i 5; i) {printf(%d , i);}printf(\n);int arr[5] {1, 2, 3, 4, 5};int sum 0;for (int i 0; i 5; i) {sum arr[i];}printf(The sum of the array is: %d\n, sum);return 0; }运行结果: (3, void) (1, test1) (16, () (17, )) (18, {) (4, int) (1, a) (36, ) (2, 5) (15, ,) (1, b) (36, ) (2, 10) (14, ;) (7, if) (16, () (1, a) (28, ) (1, b) (17, )) (18, {) (1, printf) (16, () (26, ) (1, a) (1, is) (1, greater) (1, than) (1, b) (26, ) (17, )) (14, ;) (19, }) (8, else) (7, if) (16, () (1, a) (31, ) (1, b) (17, )) (18, {) (1, printf) (16, () (26, ) (1, b) (1, is) (1, greater) (1, than) (1, a) (26, ) (17, )) (14, ;) (19, }) (8, else) (18, {) (1, printf) (16, () (26, ) (1, a) (1, and) (1, b) (1, are) (1, equal) (26, ) (17, )) (14, ;) (19, }) (9, for) (16, () (4, int) (1, i) (36, ) (2, 0) (14, ;) (1, i) (31, ) (2, 5) (14, ;) (1, i) (45 ) (17, )) (18, {) (1, printf) (16, () (26, ) (22, %) (1, d) (26, ) (15, ,) (1, i) (17, )) (14, ;) (19, }) (1, printf) (16, () (26, ) (26, ) (17, )) (14, ;) (4, int) (1, arr) (20, [) (2, 5) (21, ]) (36, ) (18, {) (2, 1) (15, ,) (2, 2) (15, ,) (2, 3) (15, ,) (2, 4) (15, ,) (2, 5) (19, }) (14, ;) (4, int) (1, sum) (36, ) (2, 0) (14, ;) (9, for) (16, () (4, int) (1, i) (36, ) (2, 0) (14, ;) (1, i) (31, ) (2, 5) (14, ;) (1, i) (45 ) (17, )) (18, {) (1, sum) (46, ) (1, arr) (20, [) (1, i) (21, ]) (14, ;) (19, }) (1, printf) (16, () (26, ) (1, The) (1, sum) (1, of) (1, the) (1, array) (1, is) (24, :) (22, %) (1, d) (26, ) (15, ,) (1, sum) (17, )) (14, ;) (13, return) (2, 0) (14, ;) (19, })
http://wiki.neutronadmin.com/news/155443/

相关文章:

  • 自助建站的优势政务网站网上调查怎么做
  • 怎么做自己的公司网站wordpress func
  • 网站无法链接centos wordpress 优化
  • c 做交易网站石家庄哪里有网站建设
  • 网站代备案网页美工设计课程
  • 给个网站能用的2022国内域名注册商
  • 营销型网站具备的二大能力wordpress 自动保存远程图片
  • 网站建设创意报告书学历提升有几种方式
  • 舟山建设网站公司seo搜狗排名点击
  • 那个网站教你做毕设的wordpress 获取当前路径
  • 迁安建设局官方网站北京保障性住房建设投资中心网站
  • 传统网站设计织梦网站首页是哪个文件
  • 青岛开发网站烟台市建设工程招标投标协会网站
  • 动态的网站怎么做水头做网站
  • 淄川网站建设中关村在线主页
  • 深圳建网站技术常用于做网站的软件
  • 合肥做网站的公有没有悬赏做ppt的网站
  • 电子商务网站开发主要实现功能对外贸营销型网站建设的几点建议
  • 建设企业网站下载外贸网站怎么换域名
  • 本地网站做通用会员卡设计网页通常使用什么语言
  • 丽水网站建设公司排名企业网站推广方案
  • 手机app开发软件有哪些三秦seo
  • 平台网站开发公司php网站开发实例教程的作者
  • 做阿里巴巴1688网站程序做网站税费
  • html购物网站代码vs2015做网站的后端
  • 阿里云服务器wordpress建站教程上海装修公司排名前十名
  • 自己做网站用花钱吗ui设计培训机构哪个比较好
  • 公司要做网站建设网站的成本有哪些
  • 图片网站虚拟主机免费下载网站模板
  • 手机移动端网站建设邯郸住宅与房地产信息网