在C语言实现中,建表也就是将一系列的数据,或者有原始数据中提取出的特征值,存储到一定的数据结构中,如数组或链表中。
查表的时候,就是对数组或链表查询的过程。常用的方式有如下几种:
1 对于有序数组,可以采用折半查找的方式快速查询。
2 对于链表,可以根据链表的构建方式,进行针对性查询算法的编写。
3 大多数情况,可以通过遍历的方式进行查表。即从第一个元素开始,一直顺序查询到最后一个元素,逐一对比。
数组。将数组定义为只读属性,像这样codeunsigned
char
TAB[
*
]={xx,
xx,.........}意思是
只读的
无符号字节型数组TAB。编译器会帮你把这个数组放到ROM里面去,而不会占用RAM。使用的时候和一般的数组一样使用就可以了。如我要调出数组里面的第十个数,只需要a=TAB[9]就可以了。并且你可以指针去查找里面的数据,很方便操作。
#include<stdio.h>struct data
{int t
float m
}
struct data a[]={{0,29.4},{10,33.3},{20,37.2},{30,41.4},{40,45.8},{50,50.4},{60,55.2},{70,60.2},{80,65.6}}
void main()
{
int n,i
scanf("%d",&n)
for(i=0i<9i++)
if(a[i].t==n)
{printf("%3.1f\n",a[i].m)
break
}
}
这个简单~
希望对你能有所帮助。