括要算法
① 括号匹配 基本算法
用栈的数据结构
先读入一个括号,如果为左括号,入栈,否则,出错退出
继续读入括号,如果是右括号,检查栈,如果非空,出栈(因为不把右括号入栈,所以栈里面都是左括号),如果空,出错退出
直到读完处理完最后一个括号,如果这个时候栈为空,那么成功返回true,否则返回false
② 带括号的加减混合运算是什么
先算括号里面的,再算外面的加减。
加减混合运算题应该按从左向右顺序依次演算。
1、同级运算时,从左到右依次计算。
2、两级运算时,先算乘除,后算加减。
3、有括号时,先算括号里面的,再算括号外面的。
4、有多层括号时,先算小括号里的,再算中括号里面的,再算大括号里面的,最后算括号外面的。
(2)括要算法扩展阅读
运算定律
1、加法交换律:在两个数的加法运算中,交换两个加数的位置,和不变。字母表示:a+b=b+a
2、加法结合律:三个数相加,先把前两个数相加,再加另一个加数;或者先把后两个数相加,再加另一个加数,和不变。字母表示:(a+b)+c=a+(b+c)
3、乘法交换律:两个数相乘的乘法运算中,交换两个乘数的位置,积不变。字母表示:a×b=b×a
4、乘法结合律:三个数相乘,先把前两个数相乘,或先把后两个数相乘,积不变。字母表示:(a×b)×c=a×(b×c)
5、乘法分配律:两个数相加(或相减)再乘另一个数,等于把这个数分别同两个加数(减数)相乘,再把两个积相加(相减),得数不变。字母表示。
③ 圆周率到底怎么算啊
周率是数学上常用到的一个值....,约等于3.142592625.
④ 括号配对的算法
void peii(void)前部有个
scanf("%c",&data);
这里data获取了一个字符,但是用来确定的<CR>还在IO流中,所以后面第一个
scanf("%c",&data);
直接得到了<CR>,而不需要等待你的输入,接着执行第二个,IO流中已经没有字符了,所以等待你的输入.
这就是为什么你的一条语句的话直接跳过,二条语句的话入等待你的输入.