电子词典C语言程序设计,c语言电子词典源程序

#include

#include

#include

#include

#define LEN sizeof (struct cte)   /*宏定义*/

/*..........................

............................

............................*/

struct cte                        /*结构体定义*/

{

char  chinese[100] ;

char  English[100] ;

struct cte *next;

};/*........................

............................

............................

*/

struct cte *insert(struct cte *head)  /*单词添加*/

{

struct cte *p1,*p2,*p3;

unsigned int a , b;

p1=p2=head;

if (head == 0)

{

p1 = (struct cte *)malloc(LEN);

printf("1.中译英\n");

printf("2.英译中\n");

scanf("%d",&a);

if (a==1)

{

printf("请输入中文:\n");

scanf("%s",&p1->chinese);

printf("please input english:\n");

scanf("%s",&p1->English);

}

else if (a==2)

{

printf("please input english:\n");

scanf("%s",&p1->English);

printf("请输入中文:\n");

scanf("%s",&p1->chinese);

}

else

{

printf ("输入有误\n");

}

head = p1;

head->next=0;

}

else

{

p1=(struct cte *)malloc(LEN);

p3=head->next;

head->next=p1;

p1->next=p3;

printf("1.中译英\n");

printf("2.英译中\n");

scanf("%d",&b);

if (b==1)

{

printf("请输入中文:\n");

scanf("%s",&p1->chinese);

printf("please input english:\n");

scanf("%s",&p1->English);

}

else if (b==2)

{

printf("please input english:\n");

scanf("%s",&p1->English);

printf("请输入中文:\n");

scanf("%s",&p1->chinese);

}

else

{

printf("输入有误\n");

}

}

return head;

}

/*...........................

.............................

.............................*/

void cscan(struct cte *head)   /*汉译英*/

{

struct cte *p;

char a[100];

printf("请输入:");

scanf("%s",a);

p = head;

if(head==0)

printf("本词典当前为空\n");

while(p!=0)

{

if (strcmp(a,p->chinese)==0)

{

printf("English:%s",p->English);

p=0;

}

else if (strcmp(a,p->chinese) != 0)

p=p->next;

if(p==0)

printf("没这词语");

}

system("pause");

}

/*............................

..............................

..............................*/

void escan(struct cte *head)   /*英译汉*/

{

struct cte *p;

char a[100];

printf("please input a word:");

scanf("%s",a);

p=head;

if(head==0)

printf("本词典当前为空\n");

while(p!=0)

{

if (strcmp(a,p->English) == 0)

{

printf("中文:%s",p->chinese);

p = p->next;

}

else if (strcmp(a,p->English)!=0)

p = p->next;

if(p==0)

printf("没这词语");

}

system("pause");

}

/*.............................

...............................

...............................*/

void print (struct cte *head)  /*词典查看*/

{

struct cte *p;

p = head;

if(p==0)

printf("该词典没有任何记录\n");

while  (p !=0)

{

printf("中文:%s English:%s\n",p->chinese,p->English);

p = p->next;

}

system("pause");

}

/*..............................

................................

................................*/

void main()

{

void cscan(struct cte *head);

void escan(struct cte *head);

struct cte  *insert(struct cte *head);

struct cte *start(void);

struct cte *B=0;

int a,b=0,c;

/*struct cte n;*/

while(1)

{

printf("\n\n\n\n\t\t\t\t");

printf("************\n\t\t\t\t");

printf("1.汉译英\n\t\t\t\t");

printf("2.英译汉\n\t\t\t\t");

printf("3.添加新词\n\t\t\t\t");

printf("4.查看词典\n\t\t\t\t");

printf("5.清除屏幕\n\t\t\t\t");

printf("************\n\n");

printf("请选择\n");

scanf("%d",&a);

if(a==1)

{

cscan(B);

system("cls");

}

else if(a==2)

{

escan(B);

system("cls");

}

else if(a==3)

{

B = insert(B);

system("cls");

}

else if(a==4)

{

print(B);

system("cls");

}

else if(a==5)

system("cls");

else

printf("输入有误:");

}

}

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值