![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
栈
文章平均质量分 51
Creed_Wu
人生只有走出来的美丽,没有等出来的辉煌
展开
-
表达式求值
/*描述Dr.Kong设计的机器人卡多掌握了加减法运算以后,最近又学会了一些简单的函数求值,比如,它知道函数min(20,23)的值是20 ,add(10,98) 的值是108等等。经过训练,Dr.Kong设计的机器人卡多甚至会计算一种嵌套的更复杂的表达式。假设表达式可以简单定义为:1. 一个正的十进制数 x 是一个表达式。2. 如果 x 和 y 是 表达式,则 函数min(x,y )也是原创 2015-08-08 17:25:27 · 557 阅读 · 0 评论 -
括号配对
/*题目描述输入一行字符串,都为括号,判断是否匹配.只有{} [] () <>这些。输入第一行k测试数据组数之后1~k+1行为一行字符串 长度<=100输出Yes or No样例输入3(<>(){}[])((()))<)样例输出YesYesNo*/#include int main(){int i;scanf("%d",&i);while(i--)原创 2015-08-08 17:28:48 · 183 阅读 · 0 评论 -
判断回文
#include#includeint main(){ int len,top=0,mid,next,i;//top=0对栈初始化 char a[101],s[101]; gets(a); len=strlen(a); mid=len/2-1;//找到字符串的中点,对中点以前的数进行进栈 for(i=0;i<=mid;i++) { s[++top]=a[i]; } //原创 2015-07-21 16:11:20 · 387 阅读 · 0 评论 -
中缀式变为后缀式
/*算法:中缀表达式转后缀表达式的方法:1.遇到操作数:直接输出(添加到后缀表达式中)2.栈为空时,遇到运算符,直接入栈3.遇到左括号:将其入栈4.遇到右括号:执行出栈操作,并将出栈的元素输出,直到弹出栈的是左括号,左括号不输出。5.遇到其他运算符:加减乘除:弹出所有优先级大于或者等于该运算符的栈顶元素,然后将该运算符入栈6.最终将栈中的元素依次出栈,输出。例如a+b*c+(d原创 2015-09-24 21:30:02 · 422 阅读 · 1 评论 -
十-八进制转换
#include#include typedef struct node{ int data; struct node *next;}node;int main(){ int m,n; node *p,*q,*top; top=(struct node *)malloc(sizeof(struct node)); top->next=NULL; scanf("%d",&m原创 2015-11-14 20:08:13 · 467 阅读 · 0 评论 -
表达式求值(一)
/*描述ACM队的mdd想做一个计算器,但是,他要做的不仅仅是一计算一个A+B的计算器,他想实现随便输入一个表达式都能求出它的值的计算器,现在请你帮助他来实现这个计算器吧。比如输入:“1+2/4=”,程序就输出1.50(结果保留两位小数)输入第一行输入一个整数n,共有n组测试数据(n<10)。每组测试数据只有一行,是一个长度不超过1000的字符串,表示这个运算式,每个运算式都是以“=”原创 2015-10-14 16:50:16 · 1099 阅读 · 0 评论