c语言1 2 3 4 5 6 7 8 9 = 91.巧填运算符.在下式的方块中填上加号或减号,使等式成立,共有多少种填法?把每种填法的式子打印出来.1 2 3 4 5 6 7 8 9 = 9

来源:学生作业帮助网 编辑:作业帮 时间:2024/07/08 18:05:02
c语言1 2 3 4 5 6 7 8 9 = 91.巧填运算符.在下式的方块中填上加号或减号,使等式成立,共有多少种填法?把每种填法的式子打印出来.1 2 3 4 5 6 7 8 9 = 9
xUNP2ñCBOVڲ%H!B$5p3;-܅k8~y,wrAt X QxJDJSh;=YORxs\Soo Rjp-y kxNo,Roa[xo2i򾼺jAkInxxS}+ez vy "ꋕvrU[d)g 4D U3"rX#[.ilS Ú:EQb4L̄0wvA]N=LNjH$hDa}YL Դ]"N15*iGA03!=҄;#vm˺ QKTHI?UzG$J}H$v ``24MaұtH=oTM?Հ؇sZ|O1KZ]7;bޟRrjvP87hZOL`Wl7Ȧ6R`jM?,mab-ahל"<3PC.jP HXӚri"T$i EHX3AVFIsJXt`a9^exIiAHtcy]"xt\lͮ㳗A$g ^Ԧ]Gr{~?

c语言1 2 3 4 5 6 7 8 9 = 91.巧填运算符.在下式的方块中填上加号或减号,使等式成立,共有多少种填法?把每种填法的式子打印出来.1 2 3 4 5 6 7 8 9 = 9
c语言1 2 3 4 5 6 7 8 9 = 9
1.巧填运算符.
在下式的方块中填上加号或减号,使等式成立,共有多少种填法?把每种填法的式子打印出来.
1 2 3 4 5 6 7 8 9 = 9

c语言1 2 3 4 5 6 7 8 9 = 91.巧填运算符.在下式的方块中填上加号或减号,使等式成立,共有多少种填法?把每种填法的式子打印出来.1 2 3 4 5 6 7 8 9 = 9
int num[9] = {1,2,3,4,5,6,7,8,9};
char ans[9];
void display()
{
    int i;
    for(i = 0;i < 8;++i) {
        printf("%d %c ",num[i],ans[i]);
    }
    printf("9 = 9\n");
}
void dfs(int res,int from)
{
    if(from == 9) {if(res == 9) display();}
    else {
        ans[from-1] = '+';
        dfs(res+num[from],from+1);
        ans[from-1] = '-';
        dfs(res-num[from],from+1);
    }
}

void main()
{
    ans[8] = '\0';
    dfs(1,1);
}

不知道对错,不知道玩不完全!