C++ 语言程序设计(清华)

1.回文数字判断方法:y=y*10+x%10; x /= 10; return(x==y)

2.int rand(void)函数,所需头文件<cstdlib> ,功能是求出并返回一个伪随机数

  为了使伪随机数每次产生的不同,每次需要输入一个seed,void srand(unsigned int seed),功能是将种子传递给rand()

  想要产生的随机数有范围在1~6; x = 1+ rand()%6;

3.switch() case语句,可以将两个或多个case共用一个语句,在最后的case用break即可,default 用来表示其他的case情况,也需要加break:

4.递归 自身调用自身,然后逐级回退,从未知到已知,然后从已知回退到未知。。应用组合问题,结成问题,汉诺塔问题

5.由n个人里选k个人的组合数=由n-1个人里选k个人的组合数+由n-1个人里选k-1个人的组合数  nCk = n!/[(n-k)!k!]

6.汉诺塔问题

  public void hanoi(int n, char A, char B, char C) {

    if (n == 1) {
      move(A, C);
        }

    else {
      hanoi(n - 1, A, C, B);
//步骤1 按ACB数序执行N-1的汉诺塔移动        把A上的n-1个盘子借助C移动到B
      move(A, C);
//步骤2 执行最大盘子移动
      hanoi(n - 1, B, A, C);
//步骤3 按BAC数序执行N-1的汉诺塔移动       把B上的n-1个盘子借助A移动到C
      }

7.

猜你喜欢

转载自www.cnblogs.com/yawenw/p/10673424.html