📄 复件 hash.c
字号:
#define M 2//源表长
#define N 50//哈希表长
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#include<string.h>
/*typedef struct {
char * a;
int length;
int size;
}list;*/
typedef struct{
char *name;
char *pinyin;
int shuzhi;
}yuanbiao,*yuanbiaop;
typedef struct{
//char *pinyin;
int shuzi;
int dizhi;
int biaoji;
}hshlst;
Init_list(yuanbiao L[]){
printf("init\n");
L[0].name="陈红霞";L[0].pinyin="chenhonxia";
L[1].name="王伟";L[1].pinyin="wangwei";
//return L[M];//
printf("init over\n");
}
transform(yuanbiao L[]){
int i,j;
//int s[M];
printf("trans\n");
for (i=0;i<M;i++){
//s[i]=L[i].name;
L[i].shuzhi=*(L[i].pinyin);//应该加上*号,否则传递的是字符串地址,如果传递的是汉字会出现负数
//for(j=0;*L[i].name!='\0';j++)
//s[i]+=(int)(L[i].name+j);
L[i].shuzhi+=*(L[i].pinyin+6);
/*s[i]%=30;
if(!s[i])
s[i]=30;*/
//L[i].shuzhi=s[i];
}
printf("trans over\n");
}
void main(){
int i;
yuanbiao L[M];
Init_list(L);
transform(L);
printf("begin\n");
for(i=0;i<M;i++)
printf("%d ",L[i].shuzhi);
printf("end\n");
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -