c语言四则运算问题

来源:百度知道 编辑:UC知道 时间:2024/05/27 14:22:38
三、设计方法和基本原理

1. 课题功能描述

本程序的功能,就是实现数的加减乘除四则运算,如自动计算3+5*8的结果。

2. 问题详细描述

程序运行时,首先提示用户输入四则运算表达式(表达式中最多有3个运算符,数据范围为1-100的整数);
输入结束后,程序自动进行计算并给出结果。
如:输入13-10+5/8时输出3.625。

求代码!!!以及流程图能有就最好了!!!

给你一个程序代码,正好符合你的要求,直接就能编译运行,不过没有流程图。
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>

char token;/*global token variable*/
/*function prototypes for recursive calls*/
float exp(void);
float term(void);
float factor(void);

void error(void)
{
fprintf(stderr,"Error\n");
exit(1);
}

void match(char expectedToken)
{
if(token==expectedToken)token=getchar();
else error();
}

calculate()
{
float result;
token = getchar();/*load token with first character for lookahead*/
result = exp();
if(token=='\n')/*check for end of line */
printf("Result = %.2f\n",result);
else error();/*extraneous cahrs on line*/
}

main()
{
do
{
calculate();
}while(1);
}

float exp(void)
{
float temp = term