当前位置: 首页 > news >正文

英语翻译程序,可以对用户自己建立的词汇表进行增删查改

⑴ 自行建立一个包含若干英文单词的词汇表文件,系统初始化时导入内存,用于进行句子翻译。

⑵ 用户可以输入单词或者句子,在屏幕上显示对应翻译结果。

⑶ 用户可对词汇表进行添加和删除,并能将更新的词汇表存储到文件中。

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h> 
#include<stdlib.h>
#include<string.h> 
#include<Windows.h>void Menu();				//菜单
int get_choice();			//获取选择(1-4)
int load();				//导入词汇表
void search(int i);		//单词查找
int add(int i);			//添加单词
int del(int i);			//删除单词
void Save(int i);			//将新的数据存如文件void Menu()                                    //显示菜单
{printf("**************************************************************\n");printf("*                                                            *\n");printf("*                     欢迎使用英语翻译程序                   *\n");printf("*                                                            *\n");printf("*                     1.单词查询                             *\n");printf("*                     2.增加单词                             *\n");printf("*                     3.删除单词                             *\n");printf("*                     4.退出                                 *\n");printf("*                                                            *\n");printf("* 请输入你的选择:                                            *\n");printf("*                                                            *\n");printf("**************************************************************\n");
}int get_choice()                     //获取选择 (1-4)
{int a;scanf("%d", &a);return a;
}struct Translate
{char English[20];char Chinese[20];
};struct Translate cihui[6000];                       //结构体数组 int load()                                         //导入词汇表 
{int i = 0;FILE* fp;if ((fp = fopen("cihuibiao.txt", "r")) == NULL)		//打开文件{printf("无法打开文件!\n");}else {do {fscanf(fp, "%s%s", cihui[i].English, cihui[i].Chinese);i++;} while (feof(fp) == 0);				//遍历}fclose(fp);								//关闭文件return i - 1;
}void search(int i)                       //查询单词功能 
{int a;char b;system("cls");char English[1024];
I:	printf("请输入你要查询的单词\n"); scanf("%s", English);				//用户输入查询的单词for (a = 0; a <= i; a++){if (strcmp(cihui[a].English, English) == 0){printf("中文意思:%s\n", cihui[a].Chinese);break;}}if (a > i)printf("not find\n");printf("是否继续查询?(y/n)\n");fflush(stdin);						//刷新输出缓冲区scanf("%c", &b);if (b == 'y')goto I;else if (b == 'y')return;}int add(int i)                            //实现用户添加词汇表功能
{system("cls");					//清空屏幕printf("请输入你要添加的英文:\n");fflush(stdin);					//刷新输出缓冲区scanf("%s", cihui[i + 1].English);printf("请输入你要添加的中文:\n");fflush(stdin);scanf("%s", cihui[i + 1].Chinese);printf("请在文件中查看"); return i + 1;
}int del(int i)                              // 实现用户删除词汇表功能
{system("cls");char english[20];printf("请输入你要删除的英文:\n");scanf("%s", english);for (int a = 0; a <= i; a++){if (strcmp(cihui[a].English, english) == 0){while (1){strcpy(cihui[a].English, cihui[a + 1].English);strcpy(cihui[a].Chinese, cihui[a + 1].Chinese);a++;if (a > i)goto Z;}}}printf("请在文件中查看"); 
Z:	return i - 1;
}void Save(int i)                                       //清空文件,并将新的数据存入文件 
{FILE* fp = NULL;fp = fopen("词汇表.txt", "w");					//打开文件,只读方式if ((fp = fopen("词汇表.txt", "w")) == NULL){printf("写入文件失败,请重试!");}for (int a = 0; a <= i; a++){fprintf(fp, "%s", cihui[a].English);fputs(" ", fp);fprintf(fp, "%s", cihui[a].Chinese);fputs("\n", fp);}fclose(fp);     //关闭磁盘文件
}int Bye_bye()   		//退出程序
{printf("退出程序\n");return 0;
}int main()
{int a, n, b, i;
L:	i = load();system("cls");//	清空屏幕Menu();a = get_choice();switch (a){case 1: search(i); break;case 2: n = add(i); Save(n); break;case 3: b = del(i); Save(b); break;case 4: Bye_bye();}Sleep(3000);goto L;
}

 

相关文章:

英语翻译程序,可以对用户自己建立的词汇表进行增删查改

⑴ 自行建立一个包含若干英文单词的词汇表文件&#xff0c;系统初始化时导入内存&#xff0c;用于进行句子翻译。 ⑵ 用户可以输入单词或者句子&#xff0c;在屏幕上显示对应翻译结果。 ⑶ 用户可对词汇表进行添加和删除&#xff0c;并能将更新的词汇表存储到文件中。 #defi…...

Django ORM魔法:用Python代码召唤数据库之灵!

探索Django ORM的神奇世界&#xff0c;学习如何用Python代码代替复杂的SQL语句&#xff0c;召唤数据库之灵&#xff0c;让数据管理变得轻松又有趣。从基础概念到高级技巧&#xff0c;阿佑带你一步步成为Django ORM的魔法师&#xff0c;让你的应用开发速度飞起来&#xff01; 文…...

JetBrains Mono字体下载及安装

百度云字体下载 提取码&#xff1a;zida 1.mac 安装 选择文件夹中的所有字体文件&#xff0c;然后双击它们。点击“安装字体”按钮。 2.windows 安装 选择文件夹中的字体文件&#xff0c;右键单击其中任何一个&#xff0c;然后从菜单中选择“安装”。 3.linux 安装 将字体…...

【OS】AUTOSAR OS系统调用产生Trap的过程详解

目录 前言 正文 1.Os_Hal_Trap使用示例 2. Os_Hal_Trap的定义 3. syscall详解详解...

Java中的异常处理机制

在Java中&#xff0c;异常处理是一种重要的编程机制&#xff0c;用于处理程序运行时可能出现的错误情况。它提供了一种结构化的方式来处理异常情况&#xff0c;使程序能够更健壮、更易于维护。下面将从技术难点、面试官关注点、回答吸引力和代码举例四个方面来详细描述Java中的…...

什么是PLAB?

接上文PLAB---》 可以看到和TLAB很像&#xff0c;PLAB即 Promotion Local Allocation Buffers。用在年轻代对象晋升到老年代时。 在多线程并行执行YGC时&#xff0c;可能有很多对象需要晋升到老年代&#xff0c;此时老年代的指针就"热"起来了&#xff0c;于是搞了个…...

复试不考机试,初试300分以上,上岸稳了?东北林业大学计算机考研考情分析!

东北林业大学&#xff08;Northeast Forestry University&#xff09;&#xff0c;简称东北林大&#xff08;NEFU&#xff09;&#xff0c;位于黑龙江省哈尔滨市&#xff0c;是一所以林科为优势、林业工程为特色的中华人民共和国教育部直属高校&#xff0c;由教育部、国家林业局…...

【30天精通Prometheus:一站式监控实战指南】第12天:windows_exporter从入门到实战:安装、配置详解与生产环境搭建指南,超详细

亲爱的读者们&#x1f44b;   欢迎加入【30天精通Prometheus】专栏&#xff01;&#x1f4da; 在这里&#xff0c;我们将探索Prometheus的强大功能&#xff0c;并将其应用于实际监控中。这个专栏都将为你提供宝贵的实战经验。&#x1f680;   Prometheus是云原生和DevOps的…...

微信小程序的事件绑定方式

微信小程序的事件绑定方式主要包括以下几种&#xff0c;每种方式都有其特定的用法和特性&#xff1a; 基础绑定方式&#xff1a; bind&#xff1a;这是最基础的绑定方式&#xff0c;用于绑定事件处理函数。例如&#xff0c;bindtap用于绑定点击事件。当组件触发事件时&#xf…...

AR和AP重分类(Regroup)[FAGLF101/OBBU/OBBV]

一、为什么AR和AP科目需要重分类 1.1 执行操作的前提(重要) 存在AR的当月总余额在贷方&#xff08;客户贷项凭证、预收账款等&#xff09;或AP的当月总余额在借方&#xff08;供应商贷项凭证、预收账款等&#xff09;&#xff0c;这种情况下无法真实的反映出资产和负债情况&…...

进程——linux

目录 冯诺依曼体系结构&#xff08;计算机组成原理与体系结构&#xff09; 关于冯诺依曼&#xff0c;必须强调几点&#xff1a; 操作系统(Operator System) 概念 设计OS的目的 定位 如何理解 "管理" 总结 系统调用和库函数概念 承上启下 一、进程 基本概念…...

关于如何通过APlayer+MetingJS为自己的wordpress博客网页添加网易音乐播放器(无需插件)

本文转自博主的个人博客&#xff1a;https://blog.zhumengmeng.work,欢迎大家前往查看。 原文链接&#xff1a;点我访问 序言&#xff1a;最近在网上冲浪&#xff0c;发现大家的博客大部分都有一个音乐播放器能够播放音乐&#xff0c;随机我也开始寻找解决方法。可是找来找去我…...

架构师如何以打游戏的心态做开发?

为什么打游戏可以很好玩&#xff0c;能够自发学习&#xff0c;从青铜到黄金很简单。换个角度思考&#x1f914;&#xff0c;以打游戏的心态如何进行架构开发&#xff0c;可以采用以下策略&#xff1a; 设定目标和里程碑&#xff1a; 就像游戏中的任务和关卡一样&#xff0c;为…...

【WP|6】WordPress 主题开发详解

WordPress主题开发是打造独特、功能强大的网站的重要途径。无论是创建全新的主题还是对现有主题进行自定义&#xff0c;掌握主题开发技能都是非常重要的。本文将详细讲解 WordPress 主题开发的基本步骤、文件结构、模板层次以及一些高级技巧&#xff0c;帮助你从零开始创建一个…...

Kivy.garden.NavigationDrawer 后续学习

如百词斩部分代码 MRWord\pages\infopage\info.kv <InfoPage>:anim_type: slide_above_simpleid: main_winbox_button_anchor: box_button_anchor.__self__three_labels_box: three_labels_box.__self__box_phonetic: box_phonetic.__self__BoxLayout:BoxLayout:id: ma…...

【CVE-2021-3156】——漏洞复现、原理分析以及漏洞修复

文章目录 前言1、漏洞概述2、漏洞复现2.1、漏洞复现测试环境2.2、漏洞复现具体步骤 3、漏洞原理3.1、前置知识3.1.1、sudo3.1.2、sudoedit3.1.3、转义字符 3.2、漏洞分析 4、漏洞修复5、参考文献总结 前言 2021年01月27日&#xff0c;RedHat官方发布了Sudo缓冲区/栈溢出漏洞的风…...

Github 2024-05-31 Java开源项目日报 Top10

根据Github Trendings的统计,今日(2024-05-31统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Java项目10TypeScript项目1JavaGuide - Java 程序员学习和面试指南 创建周期:2118 天开发语言:Java协议类型:Apache License 2.0Star数量:1…...

【上海大学计算机组成原理实验报告】六、内存系统实验

一、实验目的 学习内存访问机制。理解代码和数据的分区存放原理和技术。 二、实验原理 根据实验指导书的相关内容&#xff0c;地址寄存器MAR用来存放要进行读或写的存储器EM的地址。其内容经数据总线DBUS写入&#xff0c;因此必须在数据总线上具有数据后&#xff0c;配合MAR允…...

C++:细谈Sleep和_sleep

ZINCFFO的提醒 还记得上上上上上上上上上上上上上上上上上上&#xff08;上的个数是真实的&#xff09;篇文章吗&#xff1f; 随机应变——Sleep()和_sleep() 但在ZINCFFO的C怪谈-02中&#xff1a; 我不喜欢Sleep...... 奤&#xff1f;媜煞鷥&#xff01; 整活&#xff01;…...

CORS前端:深度解析跨域资源共享机制及其前端应用

CORS前端&#xff1a;深度解析跨域资源共享机制及其前端应用 在前端开发领域&#xff0c;CORS&#xff08;跨源资源共享&#xff09;是一个不可或缺的概念。它允许网页应用在不同的源&#xff08;域、协议或端口&#xff09;之间进行资源请求和共享&#xff0c;从而打破了同源…...

XCTF-web-easyupload

试了试php&#xff0c;php7&#xff0c;pht&#xff0c;phtml等&#xff0c;都没有用 尝试.user.ini 抓包修改将.user.ini修改为jpg图片 在上传一个123.jpg 用蚁剑连接&#xff0c;得到flag...

7.4.分块查找

一.分块查找的算法思想&#xff1a; 1.实例&#xff1a; 以上述图片的顺序表为例&#xff0c; 该顺序表的数据元素从整体来看是乱序的&#xff0c;但如果把这些数据元素分成一块一块的小区间&#xff0c; 第一个区间[0,1]索引上的数据元素都是小于等于10的&#xff0c; 第二…...

智慧医疗能源事业线深度画像分析(上)

引言 医疗行业作为现代社会的关键基础设施,其能源消耗与环境影响正日益受到关注。随着全球"双碳"目标的推进和可持续发展理念的深入,智慧医疗能源事业线应运而生,致力于通过创新技术与管理方案,重构医疗领域的能源使用模式。这一事业线融合了能源管理、可持续发…...

条件运算符

C中的三目运算符&#xff08;也称条件运算符&#xff0c;英文&#xff1a;ternary operator&#xff09;是一种简洁的条件选择语句&#xff0c;语法如下&#xff1a; 条件表达式 ? 表达式1 : 表达式2• 如果“条件表达式”为true&#xff0c;则整个表达式的结果为“表达式1”…...

postgresql|数据库|只读用户的创建和删除(备忘)

CREATE USER read_only WITH PASSWORD 密码 -- 连接到xxx数据库 \c xxx -- 授予对xxx数据库的只读权限 GRANT CONNECT ON DATABASE xxx TO read_only; GRANT USAGE ON SCHEMA public TO read_only; GRANT SELECT ON ALL TABLES IN SCHEMA public TO read_only; GRANT EXECUTE O…...

OkHttp 中实现断点续传 demo

在 OkHttp 中实现断点续传主要通过以下步骤完成&#xff0c;核心是利用 HTTP 协议的 Range 请求头指定下载范围&#xff1a; 实现原理 Range 请求头&#xff1a;向服务器请求文件的特定字节范围&#xff08;如 Range: bytes1024-&#xff09; 本地文件记录&#xff1a;保存已…...

2021-03-15 iview一些问题

1.iview 在使用tree组件时&#xff0c;发现没有set类的方法&#xff0c;只有get&#xff0c;那么要改变tree值&#xff0c;只能遍历treeData&#xff0c;递归修改treeData的checked&#xff0c;发现无法更改&#xff0c;原因在于check模式下&#xff0c;子元素的勾选状态跟父节…...

相机从app启动流程

一、流程框架图 二、具体流程分析 1、得到cameralist和对应的静态信息 目录如下: 重点代码分析: 启动相机前,先要通过getCameraIdList获取camera的个数以及id,然后可以通过getCameraCharacteristics获取对应id camera的capabilities(静态信息)进行一些openCamera前的…...

(转)什么是DockerCompose?它有什么作用?

一、什么是DockerCompose? DockerCompose可以基于Compose文件帮我们快速的部署分布式应用&#xff0c;而无需手动一个个创建和运行容器。 Compose文件是一个文本文件&#xff0c;通过指令定义集群中的每个容器如何运行。 DockerCompose就是把DockerFile转换成指令去运行。 …...

Hive 存储格式深度解析:从 TextFile 到 ORC,如何选对数据存储方案?

在大数据处理领域&#xff0c;Hive 作为 Hadoop 生态中重要的数据仓库工具&#xff0c;其存储格式的选择直接影响数据存储成本、查询效率和计算资源消耗。面对 TextFile、SequenceFile、Parquet、RCFile、ORC 等多种存储格式&#xff0c;很多开发者常常陷入选择困境。本文将从底…...