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

保定网站建设公司南京企业网站排名优化

保定网站建设公司,南京企业网站排名优化,青海省高速公路建设管理局网站,众云网联做的网站效果好吗本专栏持续输出数据结构题目集,欢迎订阅。 文章目录题目代码题目 请编写程序,求给定的后缀表达式的值。 输入格式: 输入在一行中给出一个非空后缀表达式,其中操作数为 int 型整数,操作符包括加、减、乘、除、取模。各…

本专栏持续输出数据结构题目集,欢迎订阅。

文章目录

    • 题目
    • 代码

题目

请编写程序,求给定的后缀表达式的值。

输入格式:
输入在一行中给出一个非空后缀表达式,其中操作数为 int 型整数,操作符包括加、减、乘、除、取模。各项之间以空格分隔。表达式字符串(包括空格)长度小于 1000。题目保证正确计算的过程中不会产生溢出。

输出格式:
在一行中输出后缀表达式的值。注意全部计算都是整数运算,结果仅取整数。
以下情况需要输出错误信息:

计算除法时发现分母为 0,输出 错误:除法操作分母为零。;
计算取模时发现除数为 0,输出 错误:取模操作除数为零。;
发现表达式错误时,输出 错误:表达式不规范。;
无法正确计算出结果时,输出 10^9。

输入样例 1:
23 16 18 2 * 11 / 117 5 % + - +

输出样例 1:
34

输入样例 2:
23 0 %

输出样例 2:
错误:取模操作除数为零。
1000000000

代码

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>#define MAX_STACK_SIZE 1000
#define ERROR_VALUE 1000000000typedef struct {int data[MAX_STACK_SIZE];int top;
} Stack;void initStack(Stack *s) {s->top = -1;
}int isEmpty(Stack *s) {return s->top == -1;
}void push(Stack *s, int value) {s->data[++(s->top)] = value;
}int pop(Stack *s) {return s->data[(s->top)--];
}int peek(Stack *s) {return s->data[s->top];
}int main() {Stack stack;initStack(&stack);char token[1000];int error = 0;// 读取输入直到行尾while (scanf("%s", token) != EOF) {// 判断是否为操作数if (isdigit(token[0]) || (token[0] == '-' && isdigit(token[1]))) {int num = atoi(token);push(&stack, num);} // 判断是否为操作符else if (strlen(token) == 1) {char op = token[0];if (op == '+' || op == '-' || op == '*' || op == '/' || op == '%') {if (stack.top < 1) {error = 1;break;}int b = pop(&stack);int a = pop(&stack);int result;switch (op) {case '+':result = a + b;break;case '-':result = a - b;break;case '*':result = a * b;break;case '/':if (b == 0) {printf("错误:除法操作分母为零。\n");printf("%d\n", ERROR_VALUE);return 0;}result = a / b;break;case '%':if (b == 0) {printf("错误:取模操作除数为零。\n");printf("%d\n", ERROR_VALUE);return 0;}result = a % b;break;default:error = 1;break;}if (error) break;push(&stack, result);} else {error = 1;break;}} else {error = 1;break;}}// 检查表达式是否规范if (error || stack.top != 0) {printf("错误:表达式不规范。\n");printf("%d\n", ERROR_VALUE);return 0;}// 输出结果printf("%d\n", pop(&stack));return 0;
}    
http://www.dtcms.com/wzjs/104313.html

相关文章:

  • 学做网站教程天津网站快速排名提升
  • 闵行区新闻网网站厦门seo俱乐部
  • 网站建设基本流程备案怎么在网上推广广告
  • 灯具网站怎么做廊坊百度快照优化排名
  • 铜川做网站的公司电话网站引流推广
  • 人才网招聘信息seo任务
  • 个人公众号做电影网站百度在线使用网页版
  • 政府网站建设的意见如何做一个自己的网站呢
  • 开服网站源码线上推广产品
  • 乐清建设路小学校园网站网络推广的好处
  • 网站域名地址是什么国际新闻头条今日要闻
  • android编程商丘 峰少 seo博客
  • 网站制作难点5118站长网站
  • office做网站的软件电商运营培训哪个机构好
  • 自己做h5网站投广告的平台有哪些
  • 360免费建站方法做一个企业网站需要多少钱
  • 翻译公司网站建设多少钱重庆seo优化
  • 如何让网站不被收录泰安网络推广培训
  • 太原心诺做网站seo是什么姓氏
  • 网站开发协议模版湖南网站托管
  • 网站访客跟踪零售客户电商网站
  • 知名网站建设公司 北京seo推广话术
  • seo网站优化优化排名百度文章收录查询
  • 长安网站建设多少钱深圳全网推广方案
  • 官方网站找做化妆品套盒子东莞软文推广
  • 企业门户网站设计论文产品推销
  • 网站 站外链接seo建站是什么
  • 网站建设需要域名2024新闻热点摘抄
  • 手机网站如何制作免费自媒体视频发布平台
  • 网站建设专员怎么制作自己的网站