金山程序题

时间:2016-02-06 05:37:13
染雾
分享
WORD下载 PDF下载 投诉

金山程序题

程序题,没有规定用什么语言:

  n个选项,每个选项里面又有若干个子选项,从每个选项中选一个子选项,一共有多少个组合,

金山程序题

 

 #include

  #define N 3 //选项数

  #define Alen 3 //第一个选项的.子选项数

  #define Blen 3 //第二个选项的子选项数

  #define Clen 3 //第三个选项的子选项数

  int num = 0; //总的组合数

  char A[N][Alen] = {{’A', ‘B’, ‘C’}, {’D', ‘E’, ‘F’}, {’H', ‘I’, ‘J’}};//3个选项,每个选项有3个子选项

  int Len[N] = {Alen, Blen, Clen};//每个选项的子选项数

  int Path[N];//保存一个组合

  void Recrusive(int i)

  {

  //超过N层输出结果并且退出循环

  if (i >= N)

  {

  int k;

  num++;

  printf(”%d: “,num);

  for (k = 0; k < N; k++)

  {

  printf(”%c “, Path[k]);

  }

  printf(”\n”);

  return;

  }

  int j ;

  for (j = 0; j < Len[i]; j++)

  {

  //保存遍历字符

  Path[i] = A[i][j];

  //调用下层循环

  Recrusive(i + 1);

  }

  }

  void main()

  { Recrusive(0);

  }

金山程序题

手机扫码分享

Top