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

文化旅游做的好的网站空间qq

文化旅游做的好的网站,空间qq,怎么将自己做的网站上线,网站开发者C程序设计语言 (第二版) 练习 4-10 练习 4-10 另一种方法是通过getline函数读入整个输入行,这种情况下可以不使用getch与ungetch函数。请运用这一方法修改计算器程序。 注意:代码在win32控制台运行,在不同的IDE环境下…

C程序设计语言 (第二版) 练习 4-10

练习 4-10 另一种方法是通过getline函数读入整个输入行,这种情况下可以不使用getch与ungetch函数。请运用这一方法修改计算器程序。

注意:代码在win32控制台运行,在不同的IDE环境下,有部分可能需要变更。
IDE工具:Visual Studio 2010

 

代码块:
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#include <math.h>
#include <string.h>#define MAXOP 100
#define NUMBER '0'
#define MAXVAL 100
#define BUFSIZE 100
#define VAR '1'
#define MAXLINE 1000int sp = 0;
double val[MAXVAL];int buf[BUFSIZE];
int bufp = 0;double variable[26];char line[MAXLINE];
int lineCount = 0;
int lineLen;void push(double f){if(sp < MAXVAL){val[sp++] = f;}else{printf("Error! Stack Full, can't push %g\n", f);}
}double pop(void){if(sp > 0){return val[--sp];}else{printf("Error! Stack Empty!\n");return 0.0;}
}void printTop(void){if(sp > 0){printf("Top: %g\n", val[sp-1]);}else{printf("Error! Stack Empty!\n");}
}void topCopy(void){if(sp > 0 || sp < MAXVAL){val[sp++] = val[sp-1];}else if(sp <= 0){printf("Error! Stack Empty!\n");}else{printf("Error! Stack Full!\n");}
}void swapTop(void){double temp;if(sp >= 2){temp = val[sp-1];val[sp-1] = val[sp-2];val[sp-2] = temp;}else{printf("Can't Swap Top Number!\n");}
}void emptyStack(void){for(int i = sp - 1; i >= 0; i--){val[i] = 0;}sp = 0;
}int getch(void){return (bufp > 0) ? buf[--bufp] : getchar();
}void ungetch(int c){if(bufp >= BUFSIZE){printf("Ungetch! Too many characters!\n");}else{buf[bufp++] = c;}
}int getline(char s[], int lim){int c, i;i = 0;while(--lim > 0 && (c = getchar()) != EOF && c != '\n'){s[i++] = c;}if(c == '\n'){s[i++] = c;}s[i] = '\0';return i;
}int getop(char s[]){int i, c;if(lineCount == 0){lineLen = getline(line, MAXLINE);}if(lineLen == 0){return EOF;}else{while((s[0] = c = line[lineCount++]) == ' ' || c == '\t');s[1] = '\0';if(lineCount >= lineLen){lineCount = 0;}if(c == 's'){int next1 = line[lineCount++];int next2 = line[lineCount++];if(next1 == 'i' && next2 == 'n'){return c;}}if(c == 'e'){int next1 = line[lineCount++];int next2 = line[lineCount++];if(next1 == 'x' && next2 == 'p'){return c;}}if(c == 'p'){int next1 = line[lineCount++];int next2 = line[lineCount++];if(next1 == 'o' && next2 == 'w'){return c;}}if(c >= 'a' && c <= 'z'){int next = line[lineCount++];if(next == ' '){return VAR;}}if(c == '-'){int next = line[lineCount++];if(!isdigit(next) && next != '.'){return c;}s[1] = c = next;i = 1;}else{i = 0;if(!isdigit(c) && c != '.'){return c;}}if(isdigit(c)){while(isdigit(s[++i] = c = line[lineCount++]));}if(c == '.'){while(isdigit(s[++i] = c = line[lineCount++]));}lineCount--;s[i] = '\0';if(lineCount >= lineLen){lineCount = 0;}return NUMBER;}
}int main(){int type;double op2;char s[MAXOP];while((type = getop(s)) != EOF){switch(type){case NUMBER:push(atof(s));break;case '+':push(pop() + pop());break;case '*':push(pop() * pop());break;case '-':op2 = pop();push(pop() - op2);break;case '/':op2 = pop();if(op2 != 0.0){push(pop() / op2);}else{printf("Error! Zero Divisor!\n");}break;case '%':op2 = pop();push((int)pop() % (int)op2);break;case 's':op2 = pop();push(sin(op2));break;case 'e':op2 = pop();push(exp(op2));break;case 'p':op2 = pop();push(pow(pop(), op2));break;case VAR:variable[s[0] - 'a'] = pop();push(variable[s[0] - 'a']);printf("%c = %lf\n", s[0], variable[s[0] - 'a']);break;case '\n':printf("\t%.8g\n", pop());break;default:printf("Error! Unknown Command %s\n", s);break;}}system("pause");return 0;
}
http://www.yayakq.cn/news/493638/

相关文章:

  • 上海手机网站案例企业名录搜索软件终身免费
  • 那个公司搭建网站ui设计网站成品图片
  • 免费网站程序下载金蝶软件免费版
  • 做货代的要注册哪种物流网站wordpress配置数据库
  • 网站怎么做熊掌号广州做网站app
  • 网站注册费北京南站地图
  • 软件开发者路线图新乡网站关键词优化
  • 设置网站解析北京朝阳区房价
  • 男女怎样做那个视频网站阿里云备案 网站备案
  • 如何提高 网站的点击量学做宝宝衣服网站好
  • 深圳网站建设叶林做彩票网站需要境外
  • 做网站的会淘宝美工么上海网站开发多少钱
  • 政务中心网站建设方案绵竹seo
  • 官方网站建设步骤溧阳手机网站哪里做
  • 网站主题设计特色公司免费取名
  • 婚恋网站制作要多少钱app软件制作教程
  • 青海建设局网站高端品牌网站设计公司
  • 网站建设平台是干什么的现在做微信开发网站多少钱
  • 东莞市微信网站建设品牌网站前台功能
  • 设计图片用什么软件好深圳百度seo培训
  • 网站的设计方法有哪些内容高级搜索技巧
  • 南京网站建设公司关键词出价计算公式
  • wordpress替代软件seo站外推广业务外包
  • 网站 详细设计免费网站建站方法
  • 绵阳手机网站建设网店设计模板免费
  • 网站建设与管理个人职业生涯规划书株洲网站建设公司
  • seo网站买网络编辑是做什么的
  • 网站后台页面企业网站下载
  • 网站做rss+wordpress2017年内蒙古建设厅网站
  • 自己做家具的网站大学生网站作品