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

网站开发实例线上卖货平台有哪些

网站开发实例,线上卖货平台有哪些,电子商务网站设计步骤,合肥网页设计公司校企合作本专栏持续输出数据结构题目集,欢迎订阅。 文章目录题目代码题目 本题要求你为初学数据结构的小伙伴设计一款简单的利用堆栈执行的计算器。如上图所示,计算器由两个堆栈组成,一个堆栈 S1 存放数字,另一个堆栈 S2 存放运算符。计算…

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

文章目录

    • 题目
    • 代码

题目

在这里插入图片描述

本题要求你为初学数据结构的小伙伴设计一款简单的利用堆栈执行的计算器。如上图所示,计算器由两个堆栈组成,一个堆栈 S1 存放数字,另一个堆栈 S2 存放运算符。计算器的最下方有一个等号键,每次按下这个键,计算器就执行以下操作:

1.从 S1 中弹出两个数字,顺序为 n1 和 n2;
2.从 S2 中弹出一个运算符 op;
3.执行计算 n2 op n1;
4.将得到的结果压回 S1。

直到两个堆栈都为空时,计算结束,最后的结果将显示在屏幕上。

输入格式:
1.输入首先在第一行给出正整数 N(1<N≤10^3),为 S1 中数字的个数。
2.第二行给出 N 个绝对值不超过 100 的整数;第三行给出 N−1 个运算符 —— 这里仅考虑 +、-、*、/ 这四种运算。一行中的数字和符号都以空格分隔。

输出格式:
1.将输入的数字和运算符按给定顺序分别压入堆栈 S1​ 和 S2,将执行计算的最后结果输出。注意所有的计算都只取结果的整数部分。题目保证计算的中间和最后结果的绝对值都不超过 10^9。
2.如果执行除法时出现分母为零的非法操作,则在一行中输出:ERROR: X/0,其中 X 是当时的分子。然后结束程序。

输入样例 1:
5
40 5 8 3 2
/ * - +

输出样例 1:
2

输入样例 2:
5
2 5 8 4 4
* / - +

输出样例 2:
ERROR: 5/0

题目引用自团体程序设计天梯赛真题(2020年)。

代码

#include <stdio.h>
#include <stdlib.h>typedef struct Stack {int *data;int top;int capacity;
} Stack;Stack* createStack(int capacity) {Stack* stack = (Stack*)malloc(sizeof(Stack));stack->data = (int*)malloc(sizeof(int) * capacity);stack->top = -1;stack->capacity = capacity;return stack;
}int isEmpty(Stack* stack) {return stack->top == -1;
}void push(Stack* stack, int value) {stack->data[++stack->top] = value;
}int pop(Stack* stack) {return stack->data[stack->top--];
}int peek(Stack* stack) {return stack->data[stack->top];
}int main() {int N;scanf("%d", &N);Stack* S1 = createStack(N);Stack* S2 = createStack(N-1);// 读取数字压入S1for (int i = 0; i < N; i++) {int num;scanf("%d", &num);push(S1, num);}// 读取运算符压入S2for (int i = 0; i < N-1; i++) {char op[2];scanf("%s", op);push(S2, op[0]);}// 执行计算while (!isEmpty(S2)) {int n1 = pop(S1);int n2 = pop(S1);char op = pop(S2);int result;if (op == '/' && n1 == 0) {printf("ERROR: %d/0\n", n2);free(S1->data);free(S1);free(S2->data);free(S2);return 0;}switch (op) {case '+':result = n2 + n1;break;case '-':result = n2 - n1;break;case '*':result = n2 * n1;break;case '/':result = n2 / n1;break;}push(S1, result);}printf("%d\n", pop(S1));free(S1->data);free(S1);free(S2->data);free(S2);return 0;
}
http://www.dtcms.com/wzjs/445170.html

相关文章:

  • 廊坊网站开发公司seo短视频网页入口
  • 武汉市内做网站的公司2024年3月份病毒会爆发吗
  • 浙江做网站公司优化游戏卡顿的软件
  • 免费的平面设计网站腾讯广告联盟官网
  • 网站开发合作意向书百度关键字
  • 用网站模板给人做网站挣钱吗sem
  • 建设一个企业网站多少钱网站查询域名ip
  • 免费做图网站品牌营销推广代运营
  • 如何把网站一个栏目做301跳转东莞百度seo哪里强
  • 电子商务网站建设与开发选择题西安网站seo外包
  • 有没有专门做售楼部包装的网站百度seo优化系统
  • 网站推广合同模板建站是什么意思
  • 房产网站怎么做异地楼盘科学新概念seo外链
  • 自己做网站推广费用大网络营销前景和现状分析
  • 网站建设工单系统aso优化重要吗
  • 西宁高端企业网站建设网络营销工程师前景
  • 怎么样推广自己的公司seo自动优化软件安卓
  • 织梦做的网站首页被篡改山东建站管理系统
  • 临沂网站优化如何营销技巧和营销方法视频
  • 婚庆公司网站模板精品成品网站源码
  • 大学生html网页设计个人博客模板河南优化网站
  • delphi网站开发注册域名的步骤
  • wordpress批量管理网络优化培训要多少钱
  • 重庆网络公司网站建设最近一周的重大热点新闻
  • 做简单的网站首页推广方式营销方案
  • hexo vs wordpress上海小红书seo
  • 青浦手机网站建设百度浏览器
  • 做搜索引擎的网站推广网
  • 安卓android下载安装百度seo如何做
  • 如何更快的学习.net网站开发如何联系百度平台客服