- 相關(guān)推薦
金山程序題
程序題,沒有規(guī)定用什么語言:
n個(gè)選項(xiàng),每個(gè)選項(xiàng)里面又有若干個(gè)子選項(xiàng),從每個(gè)選項(xiàng)中選一個(gè)子選項(xiàng),一共有多少個(gè)組合,
金山程序題
。#include
#define N 3 //選項(xiàng)數(shù)
#define Alen 3 //第一個(gè)選項(xiàng)的子選項(xiàng)數(shù)
#define Blen 3 //第二個(gè)選項(xiàng)的子選項(xiàng)數(shù)
#define Clen 3 //第三個(gè)選項(xiàng)的子選項(xiàng)數(shù)
int num = 0; //總的組合數(shù)
char A[N][Alen] = {{’A', ‘B’, ‘C’}, {’D', ‘E’, ‘F’}, {’H', ‘I’, ‘J’}};//3個(gè)選項(xiàng),每個(gè)選項(xiàng)有3個(gè)子選項(xiàng)
int Len[N] = {Alen, Blen, Clen};//每個(gè)選項(xiàng)的子選項(xiàng)數(shù)
int Path[N];//保存一個(gè)組合
void Recrusive(int i)
{
//超過N層輸出結(jié)果并且退出循環(huá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];
//調(diào)用下層循環(huán)
Recrusive(i + 1);
}
}
void main()
{ Recrusive(0);
}
【金山程序題】相關(guān)文章:
金山筆試試題05-18
金山技術(shù)類筆試09-20
Delphi程序員筆試題目(選擇題)07-08
Delphi程序員判斷題筆試題目10-24
金山筆試經(jīng)驗(yàn)網(wǎng)游筆試08-03
金山校園招聘Java筆試題07-24
金山軟件校招筆試題目09-12
金山軟件軟件工程筆試題09-28
金山面試題目(北京大學(xué))10-11
Kingsoft金山公司C/C++筆試題08-02