c - c中的BODMAS计算

标签 c

嗨,我正在尝试用 C 语言编写代码来求解基于 BODMAS 规则的数学方程,有什么建议吗? 例如: 该程序的输出应为: (8+8)/2+4=12

最佳答案

#include <stdio.h>

int calc(char *exp_str){
    FILE *fp;
    int ret;
    fp=fopen("calc_aux.c","w");
    fprintf(fp, "int main(){ return %s; }", exp_str);
    fclose(fp);
    system("gcc calc_aux.c -o calc_aux.exe");
    ret=system("calc_aux.exe");
    remove("calc_aux.c");
    remove("calc_aux.exe");
    return ret;
}

int main(){
    char exp[]="(8+8)/2+4";
    printf("%s=%d\n", exp, calc(exp));
}
//result:(8+8)/2+4=12

关于c - c中的BODMAS计算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11177196/

相关文章:

无法以特定波特率进行通信

c - 为什么 Visual Studio 2010/12 在 Debug模式下运行程序会占用大量内存和时间?

c - 当一个参数通过另一个参数的引用传递时,printf 如何处理它的参数

c - 错误 C2143 : syntax error : missing ';' before '<class-head>' in struct

c - 内联汇编 : clarification of constraint modifiers

CRC字节顺序变换

c++ - exe 可以小于其最大的声明缓冲区吗?

c - 了解arm64的kvm_vcpu_run_vhe函数

c - C 中的链表插入

c - 关于 C 中的重入