-3

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

4

1 回答 1

0
#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
于 2012-06-24T22:35:25.477 回答