/* --- The following code comes from D:\Program Files\lcc\lib\wizard\textmode.tpl. */
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "math.h"#define FUNCNUM      4extern int m_List[][3] ={ {101,          0,              1},
{102,          0,              2},
{103,          0,              3},
{103,          1,              4},
{103,          3,              5},
{103,          4,              6},
{103,          6,              7},
{103,          8,              8},
{105,          1,              9},
{106,          1,              10},
{107,          1,              11},
{108,          1,              12},
{109,          1,              13},
{109,          2,              14},
{109,          3,              15},
{109,          4,              16},
{109,          5,              17},
{109,          6,              18},
{110,          1,              19},
{111,          1,              20},
{111,          2,              21},
{112,          1,              22},
{113,          1,              23} };
int GetFields(int nFunNo, int nSubNo)
{
int j, i;
int v1, v2, base; j = sizeof(m_List) / sizeof(int) / 3;
i = j / 2;
base = (int)pow(10, FUNCNUM);
v2 = base * nFunNo + nSubNo; while(j != 0)
{
v1 = m_List[i][0] * base + m_List[i][1];
if(v1 == v2)
return m_List[i][2];
else if(v1 < v2)
{
j = j / 2;
i = i + j / 2 + 1;
}
else
{
j = j / 2;
i = i - j / 2 - 1;
} } return -1;
}
int main()
{
printf("result:%d", GetFields(103, 3));
return 0;
}