电子词典
来源:互联网 发布:嵌入式linux驱动开发 编辑:程序博客网 时间:2024/04/30 04:12
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
char e[8000][25],c[8000][25];
int words=0;
int search(int low,int high,char *k);
int main()
{
char key[25];
FILE *fpin;
fpin=fopen("dictionary.txt","r");
if(fpin==NULL)
{
printf("can't open\n");
exit(1);
}
while(!feof(fpin))
{
fscanf(fpin,"%s%s",e[words],c[words]);
words++;
}
fclose(fpin);
while(1)
{
printf("请输入需查询的词(0000结束):");
scanf("%s",key);
if(strcmp(key,"0000")==0)
break;
else
{
int low=0,high=words-1;
int t=search(low,high,key);
if(t==-1)
printf("没有这个词\n");
else
printf("%s的意思是:%s\n",key,c[t]);
}
}
printf("欢迎再次使用\n");
return 0;
}/*****************************************************************
功能描述:二分法查找单词
输入参数:low-数组较小一端的下标
high-数组较大一端的下标
*k-指向存储需查找单词的空间
返回值:-1
其它说明:无
******************************************************************/
int search(int low,int high,char *k)
{
int mid;
while(low<=high)
{
mid=(low+high)/2;
if(strcmp(e[mid],k)==0)
return mid;
else if(strcmp(e[mid],k)>0)
high=mid-1;
else
low=mid+1;
}
return -1;
#include <stdlib.h>
#include <string.h>
char e[8000][25],c[8000][25];
int words=0;
int search(int low,int high,char *k);
int main()
{
char key[25];
FILE *fpin;
fpin=fopen("dictionary.txt","r");
if(fpin==NULL)
{
printf("can't open\n");
exit(1);
}
while(!feof(fpin))
{
fscanf(fpin,"%s%s",e[words],c[words]);
words++;
}
fclose(fpin);
while(1)
{
printf("请输入需查询的词(0000结束):");
scanf("%s",key);
if(strcmp(key,"0000")==0)
break;
else
{
int low=0,high=words-1;
int t=search(low,high,key);
if(t==-1)
printf("没有这个词\n");
else
printf("%s的意思是:%s\n",key,c[t]);
}
}
printf("欢迎再次使用\n");
return 0;
}/*****************************************************************
功能描述:二分法查找单词
输入参数:low-数组较小一端的下标
high-数组较大一端的下标
*k-指向存储需查找单词的空间
返回值:-1
其它说明:无
******************************************************************/
int search(int low,int high,char *k)
{
int mid;
while(low<=high)
{
mid=(low+high)/2;
if(strcmp(e[mid],k)==0)
return mid;
else if(strcmp(e[mid],k)>0)
high=mid-1;
else
low=mid+1;
}
return -1;
}
0 0
- 电子词典
- 电子词典
- 电子词典
- 电子词典
- 电子词典
- 电子词典
- 电子词典
- 电子词典
- 电子词典
- 电子词典
- 电子词典
- 电子词典
- 更换电子词典
- 简易电子词典
- SQLite:电子词典
- 电子词典--char5
- 英语电子词典
- oppo电子词典
- 51nod 1629 B君的圆锥
- Sql server 2008R2 日志文件清理
- 给CSDN董事长蒋涛的第二封公开信:
- Windows核心编程笔记(四) 进程相关
- 基础9
- 电子词典
- CRC32 Hash PK Murmur Hash
- 【LeetCode】 357. Count Numbers with Unique Digits
- TCP三次握手和backlog参数
- 小学生成绩管理系统
- 一段神奇的代码
- 小学生考试系统
- 有道云笔记启动时出现问题
- 三种二分