⑴ 如何制作一个c语言的词典
以前写过一个类似的。
#include<stdio.h>
#include<string.h>
int main()
{
char *en[]={"airport",
"detective",
"parcel",
"diamond",
"stone",
"sand",
"flower",
"vegetable",
"pool",
"minute"};
char *ch[]={"飞机场",
"侦探",
"包裹",
"钻石",
"石头",
"沙",
"花",
"蔬菜",
"水池",
"分钟"};
int i,k=-1; //i作为循环变量,k保存字符串比较后的结果,初始值为-1
char s[20]; //s用来保存用户输入的单词
char **p=en; //定义一个指向指针的指针p,将它的值初始化为数组en的地址
printf("目前词库中仅收录了如下单词:\n");
for (i=0;i<10;i++)
{
puts(*p);
*p++;
}
printf("请输入一个单词,会给出该单词的解释:");
gets(s);
p=en;
for (i=0;i<10;i++)
{
if (strcmp(s,*p)==0)
{
k=i;
break;
}
*p++;
}
if (k!=-1)
printf("%s的意思是:%s\n",*p,ch[k]);
else
printf("该词库没有收录%s这个单词。\n",s);
return 0;
}
⑵ 怎样用c语言编写英汉词典
用c语言最好用上数据库,sqlite3是用c语言写的开源数据库,Windows下、Linux下都能用,你可以用它。
⑶ 用c语言开发一个小型的英汉词典。
给你个参考:
#include "stdafx.h"
#include <windows.h>
#include <stdio.h>
#include <malloc.h>
#include <winbase.h>
#include <process.h>
void Search()
{
char temp[100];
char buffer[2];
char result[100];
printf("请输入要查询的单词:\n");
scanf("%s",&temp);
buffer[0]=temp[0];
buffer[1]='\0';
int ret=GetPrivateProfileString(buffer,temp,0,result,100,"./date.ini");
if(ret>0)
printf("%s\n\n\n\n\n",result);
else
printf("对不起,没有您要查找的单词.\n\n\n\n\n");
}
void InsertItem()
{
char temp[100];
char buffer[2];
char result[100];
printf("请输入要插入的单词:\n");
scanf("%s",&temp);
printf("请输入单词的解释:\n");
getchar();
scanf("%s",&result);
buffer[0]=temp[0];
buffer[1]='\0';
int ret=WritePrivateProfileString(buffer,temp,result,"./date.ini");
if(ret=0)
printf("插入失败。\n\n\n\n\n");
else
printf("插入成功。\n\n\n\n\n");
}
int main(int argc, char* argv[])
{
int index;
main:
printf("**************MENU***************\n\n");
printf(" 1 英译汉\n");
// printf("2 汉译英\n");
printf(" 2 插入新的词条\n");
// printf(" 3 删除已有词条\n");
printf(" 3 清空屏幕\n");
printf(" 4 退出\n\n");
printf("**********************************\n");
do{
printf("请选择操作(1~4):\n");
scanf("%d",&index); /*输入选择项*/
}while(index<0||index>5); /*选择项不在0~4之间重输*/
switch(index)
{
case 1:
Search();
goto main;
break;
case 2:
InsertItem();
goto main;
break;
case 3:
system("cls");
goto main;
break;
case 4:
return 0;
break;
default:
break;
}
return 0;
}
输出:
**************MENU***************
1 英译汉
2 插入新的词条
3 清空屏幕
4 退出
**********************************
请选择操作(1~4):
1
请输入要查询的单词:
bad
adj. 劣质的,有害的,坏的,不利的,不健康的,严重的
**************MENU***************
1 英译汉
2 插入新的词条
3 清空屏幕
4 退出
**********************************
请选择操作(1~4):
2
请输入要插入的单词:
cat
请输入单词的解释:
猫
插入成功。
**************MENU***************
1 英译汉
2 插入新的词条
3 清空屏幕
4 退出
**********************************
请选择操作(1~4):
1
请输入要查询的单词:
cat
猫
**************MENU***************
1 英译汉
2 插入新的词条
3 清空屏幕
4 退出
**********************************
请选择操作(1~4):
4
Press any key to continue
⑷ 怎样用C语言编写英汉小词典
很BS楼上的这个人,人家学点东西你就要钱
这个方面的还没做过,我给你个思路吧,如1楼所说,采用动态单链表,在结构体里定义所要涉及的成员,查找功能利用字符串比较函数strcmp,然后利用文件操作进行储存,当然如果你会连接数据库更好
以上的可以实现你的题目的所有要求
⑸ 如何用c语言做一个简单的英语词典
//新建一个字典文本文件,命名为:dict.dat,内容格式如下:或下载一个也可
//abandonv.抛弃,放弃
//abandonmentn.放弃
//abbreviationn.缩写
//abeyancen.缓办,中止
//abidev.遵守
//abilityn.能力
//ableadj.有能力的,能干的
//abnormaladj.反常的,变态的
//aboardadv.船(车)上
//abolishv.废除,取消
//******************************
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
structNODE
{
chare[20];
charc[50];
structNODE*pnext;
};
structNODE*pN;
structNODE*pHead=NULL;
structNODE*pNode=NULL;
structNODE*pNext=NULL;
structNODE*pEnd=NULL;
FILE*open_dict()
{
FILE*fp;
if((fp=fopen("dict.dat","r"))==NULL)
{
printf("opendicterror! ");
returnNULL;
}
returnfp;
}
intgetdata_from_dict(FILE*fp)
{
inti,j;
charbuf[50];
while(1)
{
pN=(structNODE*)malloc(sizeof(structNODE));
memset(pN->c,'