**
有三种不同的问题,下面直接上代码,错误在代码后面
**
这是一个分别用静态表,动态表和哈希表查找的题目,要求是对四位数字求除以3的余数然后查找出余数相同的值,后面那些“五五五”是人名。 共有三种错误,我是用的vs2017版本
#include<tchar.h>
#include <stdio.h>
#include <malloc.h>
#define MAXL 100 //最大长度
#define NULLKEY -1 //定义空关键字值
#define DELKEY -2 //定义被删关键字值
typedef int KeyType; //定义关键字类型为int
typedef char InfoType;
typedef struct
{
KeyType key; //关键字项
InfoType data[7]; //其他数据项,类型为InfoType
} RecType; //查找元素的类型
typedef struct
{
KeyType flag;
KeyType number[10]; //关键字项
KeyType length = 0;
} FlagType; //查找元素的类型
void DataInit(RecType R[], char name[7], int weight, int i)
{
int j;
R[i].key = weight;
for (j = 0; j < 7; j++)
R[i].data[j] = name[j];
}
void CreateData(RecType R[], int n)
{
DataInit(R, "一一一", 3221, 1);
DataInit(R, "二二二", 3223, 2);
DataInit(R, "三三三", 3494, 3);
DataInit(R, "四四四", 3495, 4);
DataInit(R, "五五五", 3496, 5);
DataInit(R, "六六六", 3606, 6);
DataInit(R, "七七七", 3607, 7);
DataInit(R, "八八八", 3781, 8);
DataInit(R, "九九九", 3782, 9);
DataInit(R, "十十十", 3919, 10);
DataInit(R, "打的啥", 4050, 11);
DataInit(R, "二七区", 4051, 12);
DataInit(R, "问问问", 4054, 13);
DataInit(R, "威风去", 4055, 14);
DataInit(R, "可分为", 2896, 15);
}
void DispList(RecType R[], int n) //输出顺序表
{
for (int i = 1; i <= n; i++)
printf("%d ", R[i].key);
printf("\n");
}
void DispListname(RecType R[], int n) //输出顺序表
{
for (int i = 1; i <= n; i++)
{
printf(" %s: ", R[i].data);
printf("%d \n", R[i].key);
}
printf("\n"