C语言算24点

C语言算24点,第1张

#include <stdio.h>

#include <stdlib.h>

#include <math.h>

char op[3], o[5]="+-*/"

float n[4], on[10]

int used[4] = {0}, top=0, tp=0, x

void chk(float k)

void search24(int d)

float calc(float n1, float n2, char o)

void make(int i, float p, float q, char o, int d)

int main( void )

{

printf("please input 4 card number:\n")

  scanf("%f%f%f%f", &n[0], &n[1], &n[2], &n[3])

  search24(0)

  printf("No answer.\n")

  return 0

}

void chk(float k)

{

  if( (tp != 3) || ( fabs(k-24.0) >0.000001 )) //没有用完3个运算符或者结果不为24就退出.

return

  for(x=0x<5x+=2)            肆哪                                //这样设计是为了使3个选中的符号都可以得到输出.

      printf("%g%c%g=%g\n", on[x], op[x/2], on[x+1],         //分析得到的.

                             calc(on[x], on[x+1], op[x/2]))

system("pause")

  exit(0)

}

float calc(float n1, float n2, char o)

{

  switch(o){

      case '+': return (n1+n2)

      case '-': return (n1-n2)

      case '*': return (n1*n2)

      case '/': return (n1/n2)

default: exit(0)

  }

}

void make(int i, float p, float q, char o, int d)

{

  if(fabs(q)>0.000001 || o!='/')   //除数不为0,或者为0的时候不能为除数.

      n[i] = calc(p, q, o)

  op[tp++] = o

chk(n[i])

  search24(d+1)

tp--   //因为是全是全局变量,所以在做试验性的循环递归问题时,如果失败,要在递归函数后面重新恢复回原来的值

}

void search24(int d)

{

  int i, j, k

  float p, q

  if(d>=3)    //控制递归深度,就是运算符的输出个数.

return

  for(i=0i<4i++)

      for(j=0j<4j++)

          if( (i!=j)&&(used[i]+used[j] == 0) ) //i!=j是防止重复,(used[i]+used[j] == 0)是防止又再匹配已经用过的j,

                                    //但是i可以新来.

 {

              used[j] = 1  //j得到匹配之后,赋值为1,表示已慧册经使用

  p=n[i]

  q=n[j]

              on[top++] = p

  on[top++] = q

              for(k=0k<4k++)  //运算符的循环试用.

                  make(i, p, q, o[k], d)

              n[i] = p       //因为是全是全局变量,所以在做试验性的循环递归问题时,

 裂碧码 used[j] = 0    //如果失败,要在递归函数后面重新恢复回原来的值

              top -= 2       //

          }

}

出处:http://blog.sina.com.cn/s/blog_491de9d60100d5er.html

计算机24点是一款数学类小游戏,可以在电脑上进行游戏练习。要打开计算机答灶核24点,可以参考以下步骤:

1. 首先,需要在电脑上安装计算机24点游戏软件,可以在各大软件下载网站上下载相应版本的软件。

2. 安装完成后,在程序列表中找到该游戏程序。

3. 双击程序图标打辩漏开游戏程序,进入游戏界面。如有必要,按照界面提示提供相关的游戏配置信息。清掘

4. 在游戏界面中,点击游戏开始按钮即可开始游戏。玩家需要根据屏幕上的数字,利用加、减、乘、除等运算符,以组合出24的结果。

需要注意的是,计算机24点是一款锻炼大脑思维的好游戏,玩家可以通过练习和掌握相关技巧,提升自己的计算能力和游戏水平。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12331444.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存