从键盘输入一个表达式,判断它是否符合下面的语法规则 的c语言程序
来源:学生作业帮 编辑:灵鹊做题网作业帮 分类:综合作业 时间:2024/05/03 04:42:23
从键盘输入一个表达式,判断它是否符合下面的语法规则 的c语言程序
(1) 表达式中只允许使用以下符号:
大写字母,+,-,*,/,(,)
(2) 用单个大写字母表示进行运算的数据;
(3) 允许使用括号嵌套,但只用圆括号;
(4) 表达式中允许出现空格,不影响表达式的有效部分是否符合本规则.
例如,下面是一个符合上述规则的表达式,并可以随意添加空格:
(A+B+C)*((A-C)/B)+D
(1) 表达式中只允许使用以下符号:
大写字母,+,-,*,/,(,)
(2) 用单个大写字母表示进行运算的数据;
(3) 允许使用括号嵌套,但只用圆括号;
(4) 表达式中允许出现空格,不影响表达式的有效部分是否符合本规则.
例如,下面是一个符合上述规则的表达式,并可以随意添加空格:
(A+B+C)*((A-C)/B)+D
只提供思路:
1 双重循环遍历表达式,看是否有规定字符之外的字符
2 遍历表达式,查找‘(’,如果找到,则继续查找‘)’,如果找不到则报错(或者你要求括号里必须有东西,也可以设为报错条件)
3 循环遍历表达式,分别判断运算符(+-*/)等的两侧是否为大写字母或()结构代替的数值,其中()结构的判断可以将第二步写成函数,将运算符之前或之后的字符串片段作为输入参数.
4 结束
临时想的,可能有漏洞,自己斟酌.有问题还是要自己解决的嘛,靠别人自己是学不到东西的啊
1 双重循环遍历表达式,看是否有规定字符之外的字符
2 遍历表达式,查找‘(’,如果找到,则继续查找‘)’,如果找不到则报错(或者你要求括号里必须有东西,也可以设为报错条件)
3 循环遍历表达式,分别判断运算符(+-*/)等的两侧是否为大写字母或()结构代替的数值,其中()结构的判断可以将第二步写成函数,将运算符之前或之后的字符串片段作为输入参数.
4 结束
临时想的,可能有漏洞,自己斟酌.有问题还是要自己解决的嘛,靠别人自己是学不到东西的啊
从键盘输入一个表达式,判断它是否符合下面的语法规则 的c语言程序
表达式语法扫描 从键盘输入一个表达式,判断它是否符合下面的语法规则:(1) 表达式只能由单字母、运算符
用C语言写"输入一个正整数m,判断它是否为素数"的程序.
C语言 从键盘输入一个简单的数学表达式,计算并显示该表达式的值 求算法和程序
使用c语言编写一个程序,判断从键盘输入的整数是否为“完全数”?
C语言 下面程序的功能是将从键盘输入的偶数写成两个素数之和
C语言的一个判断提下面那个是符合C语言语法的赋值表达式A.d=9+e+f=d=9 B.d=9+e,f=d+9C.=a+b
c语言 编写程序,从键盘输入一个整数,计算并输出它是几位数.若输入的是负数时,要求重新输入.
若变量已正确定义并赋值,下面符合C语言语法的表达式是
设有关变量已经正确定义并赋值,则下列表达式中符合C语言语法规则的是
从键盘输入一个整数,判断该数是否是一个质数的C程序怎么写
编一个程序,定义一个双精度浮点数变量,从键盘输入一个数,判定它是否在[500,1200]的区间里.