首页 > 作文

C++实现单词管理系统

更新时间:2023-04-06 03:23:57 阅读: 评论:0

本文实例为大家分享了c++实现单词管理系统的具体代码,供大家参考,具体内容如下

实现功能

退出添加单词删除单词修改单词查询单词排序单词显示单词

简述

单词管理系统使用了c++语言连接mysql数据库实现常规crud操作,界面为控制台窗体+文字显示的方式。

测试环境

使用win10 + code::blocks ide编写。

运行截图

代码

#include <stdio.h>#include <winsock2.h> //进行网络连接#include <mysql.h>  //mysql c api访问mysql数据库#pragma comment (lib, "libmysql.lib")#define n 50typedef struct dictionary{  char id[50];  char eng[100];  char chi[100];} dictionary;//变量配置mysql *conn; //数据库连接句柄mysql_res *res; //执行数据库语言结果mysql_row row; //存放一个数据记录char* rver = "localhost";//本地连接char* ur = "root";//char* password = "yan19991001";//mysql密码char* databa = "dictionary";//数据库名int t,rc;char query[n];    //需要查询的语句void readeng();void addeng();void deleng();void modeng();void aeng();void sort();void sort(){  char id[n],eng[n],chi[n];  sprintf(query,"lect * from test order by eng");  printf("查询语句:%s\n",query);  rc = mysql_query(conn,query);  if (0 != rc) {    printf("mysql_real_query(): %s\n", mysql_error(conn));    return -1;  }el{    printf("查询结果:\n");    res = mysql_u_result(conn); //获取结果    if (res)    {      while ((row = mysql_fetch_row(res)) != null)      {        //printf("num=%d\n",mysql_num_fields(res));//列数        for (t = 0; t < mysql_num_fields(res); t++)          printf("%8s ", row[t]);        printf("\n");      }    }    mysql_free_result(res);  }}void addeng(){  char id[n],eng[n],chi[n];  printf("请输入要增加的词典信息:\n");  printf("编号:\n");  scanf("%s",id);  printf("单词:\n");  scanf("%s",eng);  printf("中文释义:\n");  scanf("%s",chi);  sprintf(query,"inrt into test values('%s','%s','%s')",id,eng,chi);  printf("%s",query);  rc = mysql_query(conn,query);  if (0 != rc) {    printf("mysql_real_query(): %s\n", mysql_error(conn));    return -1;  }el{    printf("添加成功!\n");  }  //mysql_clo(conn); //断开数据库}void deleng(){  char id[n];  printf("请输入你要删除的单词编号:");  scanf("%s",id);  sprintf(query,"delete from test where id = '%s'",id);  printf("查询语句:%s\n",query);  rc = mysql_query(conn,query);  if (0 != rc) {    printf("mysql_real_query(): %s\n", mysql_error(conn));    return -1;  }el{    printf("删除成功!\n");  }}void modeng(){  char id[n],eng[n],chi[n];  printf("请输入你要修改的单词编号:");  scanf("%s",id);  printf("单词:\n");  scanf("%s",eng);  printf("中文释义:\n");  scanf("%s",chi);  sprintf(query,"update test t eng = '%s',chi = '%s' where id = '%s'",eng,chi,id);  printf("查询语句:%s\n",query);  rc = mysql_query(conn,query);  if (0 != rc) {    printf("mysql_real_query(): %s\n", mysql_error(conn));    return -1;  }el{    printf("修改成功!\n");  }}void aeng(){  char id[n],eng[n],chi[n];  printf("请输入你要查询的单词编号:");  scanf("%s",id);  sprintf(query,"lect * from test where id = '%s'",id);  printf("查询语句:%s\n",query);  rc = mysql_query(conn,query);  if (0 != rc) {    printf("mysql_real_query(): %s\n", mysql_error(conn));    return -1;  }el{    printf("查询结果:\n");    res = mysql_u_result(conn); //获取结果    if (res)    {      while ((row = mysql_fetch_row(res)) != null)      {        //printf("num=%d\n",mysql_num_fields(res));//列数        for (t = 0; t < mysql_num_fields(res); t++)          printf("%8s ", row[t]);        printf("\n");      }    }    mysql_free_result(res);  }}voi家长会课件d init(){  conn = mysql_init(null); //句柄初始化  if (!mysql_real_connect(conn, rver, ur, password, databa, 3306, null, 0)) //判断是否连接成功  {    printf("error connecting to databa:%s\n", mysql_error(conn));  }  el  {    printf("connected...\n");  }  //字符编码,解决乱码  if (!mysql_t_character_t(conn, "gbk"))  {    printf("new client character t: %s\n",       mysql_character_t_name(conn));  }}void readeng(){  char * query = "lect * from test";    //需要查询的语句  if (mysql_query(conn, query))  {    printf("错误信息:%s\n", mysql_error(conn));  }  el  {    printf("查询结果:\n");    res = mysql_u_result(conn); //获取结果    if (res)    {      while ((row = mysql_fetch_row(res)) != null)      {        //printf("num=%d\n",mysql_num_fields(res));//列数        for (t = 0; t < mysql_num_fields(res); t++)          printf("%8s ", row[t]);        printf("\n");      }    }    mysql_free_result(res);  }}void menu(){  int choice;  char id[20];  do  {    printf("------------------------------\n");    printf("0、退出\n");    printf("1、添加单词\n");    printf("2、删除单词\n");    printf("3、修改单词\n");    printf("4、查询单词\n");    printf("5、排序单词\n");    printf("6、显示单词\n");    printf("------------------------------\n");    printf("请输入选择:");    scanf("%d",&choice);    //根据choice的值选取功能    switch(choice)    {    ca 0:      exit(0);      break;    ca 1:      addeng();      break;    ca 2:      deleng();      break;    ca 3:      modeng();      break;    ca 4:      aeng();      break;    ca 5:      sort();      break;    ca 6:      readeng();      break;    default:     雪绒花教案 printf("输入错误!");    }    system("pau");    system("cls");  }  while(choice != 0);}int main(){  init();  menu();  return 0;}

数据库代码

/*navicat mysql data transfersource rver     : localhost_3306source rver type  : mysqlsource rver version : 50725source host      : localhost:3306source schema     : dictionarytarget rver type  : mysqltar奥运会口号get rver version : 50725file encoding     : 65001date: 28/06/2021 13:44:35*/t names utf8mb4;t foreign_ke简单单词y_checks = 0;-- ------------------------------ tab萤窗小语le structure for test-- ----------------------------drop table if exists `test`;create table `test` ( `id` varchar(50) character t utf8 collate utf8_bin not null, `eng` varchar(255) character t utf8 collate utf8_bin null default null, `chi` varchar(255) character t utf8 collate utf8_bin null default null, primary key (`id`) using btree) engine = innodb character t = utf8 collate = utf8_bin row_format = dynamic;-- ------------------------------ records of test-- ----------------------------inrt into `test` values ('1', 'adopt', '领养');inrt into `test` values ('2', 'pen', '钢笔');inrt into `test` values ('3', 'apple', '苹果');inrt into `test` values ('4', 'borrow', '借阅');inrt into `test` values ('5', 'electric', '电力');t foreign_key_checks = 1;

总结

代码还是比较简单的,主要是不同编译器,它所对应的驱动方式会有所不同。因此如果想要移植到其它的ide如: vc6++、vs、dev 等,可能需要一些处理操作,还要添加数据库连接驱动和库函数。当然,难点也就在于获取odbc连接,这块还是需要一些时间琢磨的。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持www.887551.com。

本文发布于:2023-04-06 03:23:56,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/zuowen/c27269f8501bae47e5978fca7dbe6535.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:C++实现单词管理系统.doc

本文 PDF 下载地址:C++实现单词管理系统.pdf

标签:单词   请输入   语句   数据库
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图