E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
C语言初阶学习笔记
(
C语言
)
代码:#includeintmain(){for(inti=1;i<101;i++){if(i%2==1){printf("%d,",i);}}return0;}
王多鱼001
·
2024-03-29 14:19
C语言
c语言
算法
数据结构
llama.cpp 编译安装@Ubuntu
在Kylin和Ubuntu编译llama.cpp,具体参考:llama模型
c语言
推理@FreeBSD-CSDN博客现在代码并编译:gitclonehttps://github.com/ggerganov
skywalk8163
·
2024-03-29 12:47
项目实践
人工智能
llama
ubuntu
linux
人工智能
C++
学习笔记
(lambda函数)
C++learningnote1、lambda函数的语法2、lambda函数的几种用法1、lambda函数的语法lambda函数的一般语法如下:[capture_clause](parameters)->return_type{function_body}capture_clause:需要捕获的变量,但要求该变量必须在这个作用域中。通常的捕获方式有以下几种:[]:不捕获任何变量[&]:按引用捕获变
__TAT__
·
2024-03-29 11:45
C&C++
c++
学习
笔记
2018-11-18成长小组
学习笔记
因为嗓子“罢工”,我面对众人只能借“微笑”代言。在开始授课前,绣霞老师先反馈上次作业的情况,提到“接纳”需是真正发自内心的完全接纳,而不是口头上的接纳,内心却是排斥的。提到一个“问题”孩子恰恰对家爱的更加“深沉”,夫妻间的问题不能影响到孩子,对孩子更好的爱不是你为他做的更多,而是给他自由、健康成长的空间。图片发自App一、孩子:家庭的一面镜子夫妻成了彼此的“投射”,婚姻便“吵的不可开交”,婚姻便成
实验中学45
·
2024-03-29 06:30
数据管理知识体系指南(第二版)-第五章——数据建模和设计-
学习笔记
目录5.1引言5.1.1业务驱动因素5.1.2目标和原则5.1.3基本概念5.2活动5.2.1规划数据建模5.2.2建立数据模型5.2.3审核数据模型5.2.4维护数据模型5.3工具5.3.1数据建模工具5.3.2数据血缘工具5.3.3数据分析工具5.3.4元数据资料库5.3.5数据模型模式5.3.6行业数据模型5.4方法5.4.1命名约定的最佳实践5.4.2数据库设计中的最佳实践5.5数据建模和
键盘上的五花肉
·
2024-03-29 02:01
数据治理
数据库
数据仓库
数据治理
C语言
pthread互斥锁(mutex)和可重入锁(递归锁recursive)的演示
实验理论参考:1一旦共享资源被互斥锁锁定,则其余线程想访问共享资源必须等待,直到锁被释放2使用normal属性的互斥锁,一旦发生重入逻辑,则阻塞,成为死锁需要将属性改为recursive成为可重入的,递归的代码功能:1命令行传参1model=1演示异步未上锁之乱序演示count在数据竞态(RaceCondition)下的错误值2命令行传参2model=2演示使用互斥锁后线程的执行顺序演示count
嫦娥妹妹等等我
·
2024-03-28 22:57
开发语言
c语言
C语言
演示多线程编程条件下自旋锁和屏障的使用
主线故事:有4个人玩游戏输了,惩罚:1分别使用4台不同的ATM机给我存钱2必须一块一块的存3存完还得在ATM上看一下我的余额设计模式:1每个人使用一条单独的线程,再准备一个计时线程用来输出时间2存钱涉及到对共享资源的读写,是原子操作需要用锁保护这里使用自旋锁3都存完钱后需要等待在各自的ATM上回显余额这里使用屏障技术4如果在主线程中回显对应他们给我打电话告诉我存完了我自己看一下则不需要使用屏障因为
嫦娥妹妹等等我
·
2024-03-28 22:57
开发语言
c语言
开源
Java
学习笔记
01
1.1Java简介Java的前身是Oak,詹姆斯·高斯林是java之父。1.2Java体系Java是一种与平台无关的语言,其源代码可以被编译成一种结构中立的中间文件(.class,字节码文件)于Java虚拟机上运行。1.2.3专有名词JDK提供编译、运行Java程序所需要的种种工具及资源。JRE是运行Java所依赖的环境的集合。JVM是一个虚构出来的计算机,通过在实际的计算机上仿真模拟各种计算机功
.wsy.
·
2024-03-28 22:56
日常
java
学习
笔记
生日蜡烛(
C语言
)
某君从某年开始每年都举办一次生日party,每次吹与年龄相同的蜡烛。现在他共吹了236根蜡烛。请问,他从多少岁开始过生日party的?答案:26#includeintmain(){intage=0;inttotal=0;for(inti=10;i<100;i++){for(intj=i;j<100;j++){total+=j;if(total==236){age=i;break;}}total=0
blue and ACM
·
2024-03-28 17:50
c语言
java
算法
【Git安装及使用
学习笔记
】
Git
学习笔记
Git安装Git创建本地版本库以及提交文件使用Git提交代码到码云使用Git从码云拉取代码参考博客Git安装这里参考Git详细安装教程(详解Git安装过程的每一个步骤)Git创建本地版本库以及提交文件
可可西里啊
·
2024-03-28 14:16
零零散散的学习笔记
git
学习
笔记
c++
qt5
【1.1 编程基础之输入输出】09. 字符菱形
样例输入*样例输出*************参考程序(1)
C语言
#includeintmain(){charc;scanf("%c",&c);printf("%c\n",c);printf("%c%c%
青少年编程小助手_Python
·
2024-03-27 08:27
Openjudge题目解析
算法
青少年编程
电子学会
等级考试
gesp
C#
学习笔记
一、事件派发器在C#中,事件派发器通常是指事件委托和事件处理程序的组合,用于实现一种观察者设计模式。它允许对象在状态发生变化时通知其他对象,从而实现对象之间的解耦。事件派发器的基本组成部分:事件委托(EventDelegate):事件委托是一种特殊的委托,用于封装可以被调用的方法。它定义了事件的签名,即指定了事件处理程序方法的参数和返回类型。通常,事件委托声明在事件派发器类的外部,并且使用dele
2301_79022588
·
2024-03-27 08:27
学习
笔记
C语言
-数据在内存存储
目录一、整数在内存中存储1.整数在内存中的存储2.大小端字节序2.为什么有大小端3.大小端判断二、浮点数在内存中的存储1.V=(−1)^s∗M*2^EIEEE754规定:2.浮点数存的过程3.浮点数取的过程E不全为0或不全为1E全为0E全为1题⽬解析一、整数在内存中存储1.整数在内存中的存储在内存中存储的数据是二进制,整数的2进制表示方法有三种,即原码、反码和补码有符号的整数,三种表示方法均有符号
白榆maple
·
2024-03-27 06:24
c语言
开发语言
C/C++中的Static关键字
文章目录第一部分:深入理解Static关键字定义和基本概念在C和C++中static的基本作用第二部分:Static在
C语言
中的使用静态全局变量静态局
SuhyOvO
·
2024-03-27 02:19
C语言
C++
c语言
c++
Java
学习笔记
04:Java_数组
文章目录1.数组1.1数组介绍1.2数组的定义格式1.2.1第一种格式1.2.2第二种格式1.3数组的动态初始化1.3.1什么是动态初始化1.3.2动态初始化格式1.3.3动态初始化格式详解1.4数组元素访问1.4.1什么是索引1.4.2访问数组元素格式1.4.3示例代码1.5内存分配1.5.1内存概述1.5.2java中的内存分配1.9数组的静态初始化1.9.1什么是静态初始化1.9.2静态初始
JasonYangQ
·
2024-03-27 01:48
Java
java
【Java
初阶
(三)】方法的使用
❣博主主页:33的博客❣▶文章专栏分类:Java从入门到精通◀我的代码仓库:33的代码仓库目录1.前言2.方法的概念2.1方法定义2.2实参和形参的关系3.方法的重载3.1方法重载的概念4.递归4.1递归的概念4.2递归过程分析4.3递归练习5.总结1.前言在前面的学习中,我们已经学习了Java的部分知识,包括数据类型与变量,运算符,分支与循环以及输入和输出这些基础知识,我们继续对Java的学习进
PU-YUHAN
·
2024-03-26 22:13
Java从入门到精通
java
开发语言
递归
方法
5. C++ 局部静态变量在什么时候分配内存和初始化?
对于
C语言
的全局和静态变量,不管是否被初始化,其内存空间都是全局的;如果初始化,那么初始化发生在任何代码执行之前,属于编译期初始化。
九五一
·
2024-03-26 15:34
C++知识
c++
java
jvm
开发语言
数据结构
【王道训练营】第二题 你的任务是计算a+b。
文章目录答案代码分析举例说明
C语言
基础知识:输入输出和算术操作符输入和输出示例1:使用`printf`和`scanf`函数示例2:使用`printf`函数打印多种类型的值示例3:使用算术操作符总结答案#
云梦之泽moon
·
2024-03-26 14:32
c语言
算法
开发语言
【编译原理】一篇就够了——
学习笔记
与课程实验超详细整理
⭐⭐⭐⭐⭐⭐Github主页https://github.com/A-BigTree更多
学习笔记
链接https://github.com/A-BigTree/college_assignment编译原理实验
一棵___大树
·
2024-03-26 11:59
编译原理
学习笔记
学习
算法
Java
学习笔记
:atomic的实现原理?
在多线程的场景中,我们需要保证数据安全,就会考虑同步的方案,通常会使用synchronized或者lock来处理,使用了synchronized意味着内核态的一次切换。这是一个很重的操作。有没有一种方式,可以比较便利的实现一些简单的数据同步,比如计数器等等。concurrent包下的atomic提供我们这么一种轻量级的数据同步的选择。classMyThreadimplementsRunnable{
曲钟人散
·
2024-03-26 10:47
数据结构——单向链表(
C语言
版)
在
C语言
中,我们可以使用指针来实现单向链表。下面将详细介绍如何用
C语言
实现单向链表。
GG Bond.ฺ
·
2024-03-26 10:26
数据结构
链表
c语言
C语言
之猴子吃桃
二代码实现使用
C语言
来解决这个问题,可以通过循环或者递归的方式来计算猴子第一天到底摘了多少个桃子。以下是两种方法的
普通的一个普通猿
·
2024-03-26 06:51
C语言算法
c语言
算法
开发语言
haproxy无缝热加载的辅助进程multibinder的
C语言
实现版本
本模块用epoll模型来实现了一个multibinder,供haproxy无缝热重启来使用,需要另外再做一个haproxy_wrapper来实现haproxy配置文件的生成和进程的加载功能。 本模块也可以作为入门epoll开发和signalfd开发的学习材料。haproxy的无缝热重启的实现原理功能:创建一个listensocket关闭一个listensocket获取一个listensock
码农心语
·
2024-03-26 05:21
LINUX
高性能
c++开发
haproxy
无缝热加载
seamless
reload
hitless
reload
multibinder
解释
C语言
中的预处理指令(如#include,#define)
解释
C语言
中的预处理指令(如#include,#define)
C语言
中的预处理指令是编译器在编译源代码之前首先处理的指令。这些指令通常用于包含头文件、定义宏和进行条件编译。
Layla_c
·
2024-03-26 05:20
C语言
c语言
c++
算法
Python
学习笔记
07
第十三章,面向对象初识对象生活中数据的组织学校开学,要求学生填写自己的基础信息,一人发一张白纸,让学生自己填我叫林军杰,今年31岁.来自山东省,我是男的,中国人内容混乱改为登记表,打印出来让学生自行填写:姓名林军杰姓别男国籍中国籍贯山东省年龄31整洁明了程序中数据的组织在程序中简单使用变量来记录学生信息student_1={"姓名":"周杰轮","性别":"男","国籍":"中国","籍贯":"台
正文01
·
2024-03-26 05:19
python
学习
笔记
Python
学习笔记
03
第五章、Python函数函数介绍函数函数:是组织好的,可重复使用的,用来实现特定功能的代码段name="itheima"length=len(name)print(length)输出结果:7为什么随时都可以使用len()统计长度?因为,len()是Python内置的函数:是提前写好的可以重复使用实现统计长度这一特定功能的代码段我们使用过的:input()、print()、str()、int()等都
正文01
·
2024-03-26 04:49
python
学习
笔记
数据结构——双向链表(
C语言
版)
上一章:数据结构——单向链表(
C语言
版)-CSDN博客目录什么是双向链表?双向链表的节点结构双向链表的基本操作完整的双向链表示例总结什么是双向链表?
GG Bond.ฺ
·
2024-03-25 08:54
数据结构
链表
c语言
揭秘物联网网关,如何工作?功能及选择网关的主要考虑因素
【前言】本篇为物联网硬件系列
学习笔记
,分享学习,欢迎评论区交流~在物联网时代,物联网网关至关重要。它充当传统通信网络和传感网络之间的桥梁。
东胜物联
·
2024-03-25 06:22
硬件知识
东胜产品
物联网
嵌入式硬件
智能硬件
智能网关
c++
学习笔记
(8)
strlen是
C语言
标准库中的一个函数,它的作用是确定一个以空字符结尾的字符数组(即C风格字符串)的长度。这个函数在头文件中定义,通常在需要知道字符串长度时使用,例如在复制或比较字符串时。
有趣的树人
·
2024-03-24 21:40
c++
学习
笔记
学习笔记
:TBL团队合作学习法
最近几讲陈蕾老师一直围绕着小组活动展开,先是澄清了小组活动的三种形式:对话,讨论与合作;接着给出了合作学的三种方法:TPS,四聚头法,拼图法;然后带领我们认识实施合作学习的五要素。有浅入深,让我们对小组活动的认知螺旋上升。今天这一讲TBL团队学习法。结合前面的学习,TBL与一般小组合作学习的不同之处在于:第一:TBL有固定且目的性的异质分组。一般小组合作我们常采用同桌两两一组,前后桌四人一组等比较
琦0227
·
2024-03-24 16:22
Python
学习笔记
—— 文件处理模块
Excel文件openpyxl读/写Excel文件,https://pypi.org/project/openpyxlxlwt创建Excel文件,设置单元格样式,https://pypi.org/project/xlwtxlrd读取Excel文件,https://pypi.org/project/xlrdxlutils修改Excel文件,https://pypi.org/project/xluti
miles-zh
·
2024-03-24 08:56
python
python
Java
学习笔记
之Java基础语法01-变量与常量
文章目录0.前言1.注释1.1注释格式1.2使用的技巧2.关键字2.1概念2.2class关键字2.3保留字3.字面量3.1字面量种类3.2常用转义字符4.变量4.1变量定义4.2数据类型1.分类2.基本数据类型(四类八种)3.变量初始化细节4.3计算机中的数据存储4.4练习练习1练习2练习34.5标识符1.硬性要求:2.命名原则A.小驼峰命名法B.大驼峰命名法C.阿里巴巴命名规范细节:0.前言本
神马都会亿点点的毛毛张
·
2024-03-24 04:51
编程笔记
编程实战
java
学习
笔记
web
学习笔记
(四十二)
目录1.ECMAScript新特性-async和await1.1async函数1.2await函数1.3补充:2.ES6模块化2.1模块化的优点2.2ES6模块化语法2.3ES6模块暴露2.4ES6模块导入1.ECMAScript新特性-async和await1.1async函数async函数可以单数使用,但一般我们会将async函数和await函数结合使用,可以让异步代码像同步代码一样运行,也可
shan33__
·
2024-03-24 00:15
笔记
前端
学习
笔记
javascript
开发语言
Python机器
学习笔记
:CART算法实战
完整代码及其数据,请移步小编的GitHub传送门:请点击我如果点击有误:https://github.com/LeBron-Jian/MachineLearningNote前言在python机器
学习笔记
战争热诚
·
2024-03-23 17:00
C语言
例3-22:赋值运算的例子
赋值运算的优先级:算术运算符优先于关系运算符优先于双目逻辑运算符优先于赋值运算符赋值运算符的结合性是从右至左代码如下:#includeintmain(void){inti=97,j,k,l,m,n;floatf1=1.0f,f2;charc1='b',c2;//'b'(98)printf("c2=i+1的值为:%d\n",c2=i+1);//98printf("\n");printf("j=!c1
Glace.♥
·
2024-03-22 06:22
C语言
c语言
c++
开发语言
蓝桥杯算法基础(11):十大排序算法(冒泡排序)
c语言
般版
十大排序算法合集(
c语言
般)冒泡排序选择排序插入排序希尔排序快速排序归并排序堆排序计数排序桶排序基数排序分类:交换类1.冒泡排序2.快速排序分配类1.计数排序2.基数排序选择类1.选择排序归并类1.归并排序插入类
湖前一人对影成双
·
2024-03-20 18:30
算法
排序算法
c语言
beego框架基础知识
学习笔记
网站beegogithub地址:https://github.com/beego/beegobeego中文学习文档:http://beego.gocn.vip/beego/zh/developing/什么是beegobeego是一个快速开发go应用的HTTP框架他可以用来快速开发API、Web及后端服务等各种应用bee工具什么是beebee工具是一个为了协助快速开发beego项目而创建的项目,通过
一弓虽
·
2024-03-20 16:58
beego框架学习
beego
学习
魔方矩阵
c语言
,
C语言
检验并打印魔方矩阵,检验并打印魔方矩阵,用
C语言
,求大神尽快解决...
#includeintmain(){inta[5][5],i,j,sum,N;printf("请输入一个5*5的矩阵:\n");for(i=0;i<5;i++){for(j=0;j<5;j++){scanf("%d",&a[i][j]);}}N=5*(5*5+1)/2;for(i=0;i<5;i++){sum=0;//每求一行sum重新置为0for(j=0;j<5;j++){sum=sum+a[i
weixin_40006185
·
2024-03-20 16:58
魔方矩阵c语言
C语言
—学生成绩管理系统
实验1:学生成绩管理系统V3.0某班有最多不超过30人(具体人数由键盘输入)参加某门课程的考试,参考第11周在线测验中“学生成绩管理系统V2.0”,用二维字符数组作函数参数编程实现如下菜单驱动的学生成绩管理系统:(1)录入每个学生的学号、姓名和考试成绩;(2)计算课程的总分和平均分;(3)按成绩由高到低排出名次表;(4)按成绩由低到高排出名次表;(5)按学号由小到大排出成绩表;(6)按姓名的字典顺
脉牛杂德
·
2024-03-20 15:56
c语言
算法
开发语言
数据结构
青少年编程
RabbitMQ
学习笔记
:节点名称详解、rabbitmq-server、及rabbitmq-env.conf
rabbitmq-serverrabbitmq-server启动一个RabbitMQ节点1.rabbitmq-server在前端启动一个RabbitMQ节点,示例如下:[root@rabbit3rabbitmq]#rabbitmq-server####RabbitMQ3.8.1##############Copyright(c)2007-2019PivotalSoftware,Inc.######
Bejpse
·
2024-03-20 13:55
java
java
后端
【
C语言
】遍历目录树
在Linux环境下,如果编写程序且需要通过函数接口来遍历目录树,可以考虑使用以下几个常用的调用:1.opendir()/readdir()/closedir():这是POSIX标准定义的函数,用于遍历目录。`opendir()`用于打开一个目录,`readdir()`用于读取目录内的项,`closedir()`用于关闭目录。遍历目录时,通常会对获取的每一个条目进行判断,以确定它是文件还是目录。对于
00000928
·
2024-03-20 12:53
编程
#
C语言
#
linux
c语言
算法
开发语言
C语言
之打鱼晒网问题
在
C语言
中实现这一问题的程序设计目标是:当给定一个日期后,计算出从某一固定起始日(如1990年1月1日或2011年1月1日)开始到该日期为止,渔夫按照每连续五天循环一次的行为模式(前三天打鱼,后两天晒网
普通的一个普通猿
·
2024-03-20 10:20
C语言算法
c语言
开发语言
数据结构
算法
深入挖掘
C语言
之——枚举
目录1.枚举的定义2.枚举常量的赋值3.枚举的使用示例4.注意事项在
C语言
中,枚举(Enum)是一种用户定义的数据类型,用于定义一组具名的整型常量。
GG Bond.ฺ
·
2024-03-20 09:50
c语言
开发语言
visual
studio
Ubuntu系统下
C语言
开发环境搭建与使用教程
洛可可白:个人主页个人专栏:✅前端技术✅后端技术个人博客:洛可可白博客代码获取:bestwishes0203封面壁纸:洛可可白wallpaper文章目录Ubuntu系统下
C语言
开发环境搭建与使用教程教程内容
洛可可白
·
2024-03-20 05:14
后端专栏
ubuntu
c语言
linux
设计模式
学习笔记
- 设计原则与思想总结:2.运用学过的设计原则和思想完善之前性能计数器项目
概述在《设计原则-10.实战:针对非业务的通用框架开发,如何做需求分析和设计及如何实现一个支持各种统计规则的性能计数器》中,我们讲解了如何对一个性能计数器框架进行分析、设计与实现,并且实践了一些设计原则和设计思想。当时提到,小步快跑、逐步迭代式一种非常实用的开发模式。所以,针对这个框架的开发,我们分多个版本来逐步完善。《设计原则-10.实战:针对非业务的通用框架开发,如何做需求分析和设计及如何实现
陈建111
·
2024-03-19 23:07
设计模式-实战
设计原则
思想实战
设计模式
学习笔记
- 规范与重构 - 7.实践:通过一段ID生成器代码,学习如何发现代码质量问题
前言前面讲了重构相关的知识点。用一句话总结:重构就是发现代码质量问题,并且对其进行优化的过程。今天借助一个ID生成器代码,给你展示以下重构的大致过程。背景介绍在软件开发中,ID常用来表示一些业务信息的唯一标识,比如订单的单号、数据库中的唯一主键。假设你正参与一个后端业务系统的开发,为了方便在请求出错时排查问题,在写代码的时候会在关键路径上打印日志。某个请求出错后,希望能搜索出这个请求对应的所有日志
陈建111
·
2024-03-19 23:06
设计模式-实战
代码质量
重构
设计模式
学习笔记
- 规范与重构 - 8.实践:程序出错返回啥?NULL、异常、错误吗、空对象?重构ID生成器,处理各函数的异常
概述我们可以把函数的运行结果分为两类。一类是预期结果,也就是正常情况下输出的结果。一类是非预期的结果,也就是函数在异常(或出错)情况下输出的结果。在正常情况下,函数返回数据的类型非常明确,但是在异常情况下,函数的返回数据类型确非常灵活,有多种选择,比如异常(Exception)、错误码、NULL值、特殊值(比如-1)、空对象(比如空字符串、空集合)等。在异常情况下,函数到底该返回什么样的数据类型,
陈建111
·
2024-03-19 23:36
设计模式-实战
程序出错时返回内容
2024.3.7|华北水利水电大学江淮校区ACM社团训练赛
你好朋友,这里是锅巴的C\C++
学习笔记
,常言道,不积跬步无以至千里,希望有朝一日我们积累的滴水可以击穿顽石。[NOIP2015]金币题目:国王将金币作为工资,发放给忠诚的骑士。
锅巴xx
·
2024-03-19 22:35
训练赛
c++
笔记
算法
蓝桥杯算法基础(12):十大排序算法(选择排序)(插入排序)
c语言
般版
选择排序选择排序的基本思想是冒泡排序,找到最小值,与未排序部分的第一个元素进行交换前面为已排序部分,后面为未排序部分选择排序需要用到三个指针第一个指针:从第一个元素开始,每次与最小值交换位置第二个指针:从第一个指针所在位置开始,记录未排序部分最小值的位置第三个指针:从第一个指针所在位置开始,往后找比k所在位置元素小的元素,找到后,k指向此位置intselectSort(intarr[],intle
湖前一人对影成双
·
2024-03-19 19:32
排序算法
算法
蓝桥杯
web
学习笔记
(三十六)
目录1.解构1.1对象解构1.2字符串解构1.3函数解构1.4总结2.模板字符串3.实例方法:startsWith()和endsWith()4.箭头函数4.1箭头函数的格式4.2箭头函数可以省略的部分4.3箭头函数总结5.剩余参数rest参数1.解构1.1对象解构在解构对象时要求变量名和对象的属性名保持一致,顺序不需要一致,可以随便写,但变量名和属性名一定要保持一致否则会输出undefined。当
shan33__
·
2024-03-19 19:02
笔记
学习
笔记
html
前端
javascript
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他