自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

tzhope的博客

一个小白的成长之路

  • 博客(40)
  • 问答 (1)
  • 收藏
  • 关注

原创 openssl测试

openssl的使用关于openssl库的安装可以看我上一篇文章,这一篇文章主要写openssl的使用。关于openssl库的介绍和基本的函数可以看openssl中文手册先创建一个项目,然后点击项目属性:找到VC++目录然后在包含目录中将生成的include文件添加进去,在库目录中添加生成的lib文件,在选择链接器的输入中的附加依赖库输入ssleay32.lib和libeay32.lib两个库,或者可以在生成lib文件夹中查看.lib文件,添加之后点击应用和确认就可以。openssl测试代

2021-04-18 12:38:19 626

原创 windows安装openssl

准备工具ActivePerl5.28:下载链接openssl版本:openssl官网工具的安装直接双击打开:点击:Next然后继续点击 Next选择安装目录,然后点击 Next选择Install开始安装,静静等待即可直接选择Finish,安装成功。使用win+r调出cmd命令窗口在cmd里面输入perl --version查看perl信息perl --version使用where perl来查看perl的安装路径where perl安装成功后还需要将pe

2021-04-17 19:49:41 747

原创 带头结点的链表

链表链表是一种线性表,是数据结构中的一种。在内存中是一种非连续性的存储结构,数据元素的逻辑是依靠指针来实现链接。所以,链表不支持随机访问,和另一种数据结构数组时不同的。但是比数组好的一点是她在插入删除中会非常高效。数组在这方面不如链表理想。链表包括数据域和指针初始化头结点在C++的构造函数里面对头指针进行初始化:Link::Link(){ head = new Node; head->_val = -1; head->_next = NULL;}插

2020-12-29 10:18:45 2835

原创 i++和++i的区别

i++是优先对i进行判断和操作,操作完之后在对i进行+1操作。++i优先对i加1,然后在继续后续操作示例 1#include <iostream>#include <cstdlib>using namespace std;int main(void) { int a = 0; int b = 0; cout << "a++ = " << a++ << endl; cout << "++b = " <&lt

2020-12-23 09:16:11 102

原创 位运算操作

位运算基本符号:& 按位与                              | 按位或&= 按位与并赋值                     |= 按位或并赋值^按位异或                             ^= 按位异或并赋值<< 左移      &nb

2020-12-23 00:16:28 2410

原创 常见的数据类型

数据类型常见的数据类型整型整型包括短整型(short),整型(int),长整型(long),在细分又可以分为有符号型(signed)和无符号型(unsigned)。浮点型浮点型包括单精度浮点型(float)、双精度浮点型(double)。他们都是有符号的数据类型。布尔型布尔型的取值只有true(真)和false(假),对于他来说就是非真既假的。bool flag,此时flag取值只能为true或false,即分别是1和0。一般如果没有赋值,默认为0(false)。字符型字符型在定义时

2020-12-21 22:27:45 5624 1

原创 二叉树的中序遍历

二叉树的中序遍历题目描述:给定一个二叉树的根节点 root ,返回它的 中序 遍历。样例输入:root = [1,null,2,3]样例输出[1,3,2]解法:二叉树的中序遍历规则是先去根节点的左子树,然后是根节点,最后是右子树,根据这个规则,使用栈将已经走过的根节点记录下来。在左子树走完之后,利用 vector记录左子树最左端的叶子结点的值,然后去遍历此结点的右子树,依次循环。/** * Definition for a binary tree node. * struct Tree

2020-11-21 21:31:26 326

原创 二叉树的最小深度

二叉树的最小深度题目描述:求给定二叉树的最小深度。最小深度是指树的根结点到最近叶子结点的最短路径上结点的数量。输入:{1,2,3,4,5}输出:2解法:先判断是否为空树,不是的话,对左右子树分别判断,若左子树为空,就进入右子树并且加一,若右子树为空,,就进入左子树并加一。若左右子树都不为空,对左右子树深度进行判断,输出最小的深度。/** * struct TreeNode { * int val; * struct TreeNode *left; * struct TreeNode

2020-11-21 20:57:43 2491

原创 约德尔测试

约德尔测试题目描述:兰博和提莫闲聊之后,回归到了他们的正题,约德尔人的未来。说起约德尔人的未来,黑默丁格曾经提出了一个约德尔测试,将约德尔人的历史的每个阶段都用一个字符表达出来。(包括可写字符,不包括空格。)。然后将这个字符串转化为一个01串。转化规则是如果这个字符如果是字母或者数字,这个字符变为1,其它变为0。然后将这个01串和黑默丁格观测星空得到的01串做比较,得到一个相似率。相似率越高,则约德尔的未来越光明。请问:相似率为多少?输入:每组输入数据为两行,第一行为有关约德尔人历史的字符串,第

2020-11-21 20:30:38 180

原创 基于boost库的加密算法

基于boost库的RSA加密算法

2020-10-14 22:04:38 3893 3

原创 图片存储服务端

图片服务器需求实现一个HTTP服务器,使用这个服务器来存储图片,并且为每张图片提供唯一的URL,使用URL将图片展示到网页上面。功能1、上传图片2、查看图片内容3、查看每个图片属性4、删除图片工具MySQL数据库,httplib库,JSON,G++等编译工具。数据库设计对数据库进行连接初始化: 11 static MYSQL *MySQLInit() 12 ...

2019-10-06 16:14:21 1073

原创 递归方式实现打印一个整数的每一位

#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>#include <stdlib.h>void Every(int n){ if (n < 10 && n >= 0) { printf("%d ", n ); } else { Every(n /...

2019-07-31 18:16:18 179

原创 递归和非递归分别实现strlen

什么是strlen函数:strlen函数是计算一个字符串从开始到'\0'字符一共有多少个字符元素。strlen函数是包含在C语言string库当中的。使用非递归方法实现strlen函数:#include <stdlib.h>#include <stdio.h>#include <string.h>int Strlen(char a[])...

2019-07-31 16:40:59 87

原创 递归和非递归分别实现求n的阶乘

一个正整数的阶乘(factorial)是所有小于及等于该数的正整数的积,并且0的阶乘为1。自然数n的阶乘写作n!。为了防止数组越界也可以用long long 整型来代替int型。非递归方法实现:#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>#include <stdlib.h>int Factoria...

2019-07-31 16:07:41 384

原创 递归将字符串反转

编写一个函数 reverse_string(char * string)(递归实现)实现:将参数字符串中的字符反向排列。#include <stdio.h>#include <stdlib.h>#include <string.h>int reverse_string(char *arr){ //若字符串为空,返回空 if (!arr)...

2019-07-30 17:39:24 117

原创 递归求各个位置的和

写一个递归函数DigitSum(n),输入一个非负整数,返回组成它的数字之和。#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>#include <stdlib.h>int DigitSum(int n){ if (n < 10) { return n; } else { return ...

2019-07-30 16:54:01 121

原创 递归方法求幂运算

编写一个函数实现n^k,使用递归实现#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>#include <stdlib.h>int Power(int a, int b){ //当幂等于0时,返回1 if (b == 0) { return 1; } //当幂为1时,返回它本身 if (b =...

2019-07-30 16:46:33 2591

原创 斐波那契数列

斐波那契数列(Fibonacci sequence)是数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……在数学上,斐波纳契数列以如下被以递归的方法定义:F(1)=1,F(2)=1, F(n)=F(n-1)+F(n-2)(n>=3,n∈N*)使用递归方法实现...

2019-07-30 16:28:23 195

原创 素数的判断

实现一个函数,判断一个数是不是素数。素数又称为质数。一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数;否则称为合数。#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>#include <stdlib.h>int Judge(int a){ int count = 0; for (i...

2019-07-30 15:50:04 681

原创 数组基本函数

创建一个数组,实现函数init()初始化数组、实现empty()清空数组、实现reverse()函数完成数组元素的逆置。#include <stdio.h>#include <stdlib.h>#define MAX 10int Init(int a[]){ //对数组进行初始化,也可以用scanf进行输入 for (int i = 0; ...

2019-07-30 15:35:15 106

原创 三子棋小游戏

三子棋游戏规则:玩家使用x,电脑使用o,在九宫格上面看谁先能连成一条线(一行/一列/对角线),若是棋盘下满并没有分出胜负,那就是和棋。游戏开始界面:游戏界面:游戏结束界面:#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>#include <stdlib.h>#include <t...

2019-07-30 08:51:04 160

原创 判断年份是否是闰年

闰年是能被4整除但不能被100整除的年份和能被400整除的年份。#include <stdio.h>void Leap(int year){ if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) { printf("%d是闰年!\n", year); } else { printf...

2019-07-11 20:18:09 110

原创 swap交换

使用函数实现两个数的交换#include <stdio.h>//使用void创建函数,不需要返回值,并且创建两个指针,获取需要交换的数值void swap(int* a, int* b){ //建立临时空间,进行交换 int temp = *a; *a = *b; *b = temp;}int main(){ int x = 10; int y = 2...

2019-07-11 20:12:13 414

原创 乘法口诀表

实现一个函数,打印乘法口诀表,口诀表的行数和列数自己指定,输入9,输出9*9口诀表,输入12,输出12*12的乘法口诀表。#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>int main(){ int x = 0, y = 0; printf("输入需要大小的口诀表:"); scanf("%d", &x)...

2019-07-11 20:02:40 70

原创 英文字符串改变大小写

如果是小写字符就输出对应的大写字符,如果接收的是大写字符,就输出对应的小写字符,如果是数字不输出。#include <stdio.h>#include <stdlib.h>#include <string.h>#define N 100void Case(){ //定义两个字符数组,一个为了接收键盘输入的字符,一个存储改变之后的字符...

2019-07-11 19:37:51 335

原创 账号登录

编写代码模拟三次密码输入的场景。最多能输入三次密码,密码正确,提示“登录成功”,密码错误,可以重新输入,最多输入三次。三次均错,则提示退出程序。初始密码为:abcd#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>#include <string.h>#include <stdlib.h>...

2019-07-05 17:34:54 269

原创 数组中查找某个数

顺序数组中查找数见得放发有两个:顺序查找:顺序查找就是对数组进行遍历,在便利的过程中进行查找。#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>int main(){ int a[] = { 1,2,3,4,5,6,7,8,9 }; //确定数组的大小,以及循环次数 int size = sizeof(a); ...

2019-07-05 16:41:43 5639

原创 猜数字小游戏

猜数字游戏规则:随机生成一个0~100的数字,另一个人猜,若是猜的过大或者太小都会给出提示,直到猜对为止。#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>#include <stdlib.h>void Judge(){ int x, y; //生成随机数 x = rand(); printf("输...

2019-07-05 11:42:26 302

原创 求Sn=a+aa+aaa+aaaa+aaaaa的前5项之和

突然想起一起写过的一个小程序,求Sn=a+aa+aaa+aaaa+aaaaa的前5项之和,其中a是一个数字,例如:2+22+222+2222+22222#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>#include <math.h>int main(){ int a; int Sn = 0; p...

2019-06-30 14:50:22 116

原创 查找水仙花数

“水仙花数”是指一个三位数,其各位数字的立方和确好等于该数本身,如;153=1^3+5^3+3^3,则153是一个“水仙花数”。求出100~999之间的所有“水仙花数”并输出。#include <stdio.h>#include <math.h>int main(){ printf("100~999中间的水仙花数有:"); //遍历100~999 f...

2019-06-30 14:12:01 2265

原创 输出简单图形

在屏幕上输出以下图案:*************************************************************************************#include <stdio.h>int main(){ //正序输出* for (int i = 1;i <= 7;...

2019-06-30 13:55:01 306

原创 数组中计算9出现的次数

数一下 1到 100 的所有整数中出现多少次数字9。#include <stdio.h>#include <stdlib.h>int main(){ //给定一个整型变量,用来记录9的个数 int count = 0; //从1到100遍历 for (int i = 1;i <= 100;++i) { //记录个位上是9的个数 if (...

2019-06-30 13:27:32 217

原创 计算一串分数的和

计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值。计算这个有两种方法,第一种是直接进行计算#include <stdio.h>#include <math.h>//简单方法int main(){ double sum = 0; printf("计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/...

2019-06-30 11:51:42 141

原创 最大公约数判断

公约数也叫公因数。它是一个能被若干个整数同时均整除的整数。而最大公约数是指两个或两个以上的整数最大的能够同时整除的整数。求解方法有两种,一种叫质因数法,一种叫辗转相除法,也叫欧几里得算法。在这里使用的方法是欧几里得算法:使用的两个整数分别是41,18;#include <stdio.h>#include <stdlib.h>#include &lt...

2019-06-30 00:50:42 1578

原创 对一个数组进行排序输出

目标:将三个数按从大到小输出。给定一个包含10个数的数组a[10] = { 5,3,6,2,1,8,9,7,10,4 };将他进行降序输出:#include <stdio.h>int main(){ int a[10] = { 5,3,6,2,1,8,9,7,10,4 }; //一个一个数的进行比较,先用第一个数取出来比较 for (int i = 0;i &...

2019-06-30 00:23:17 4060

原创 求数组中的最大值

求10 个整数中最大值。给定一个数组a[10] = { 1,3,4,7,8,2,6,9,10,5 };在数组中找寻最大值。创建一个int型的变量,将数组中的第一个值赋给他,作为最大值。使用循环遍历一遍数组,在遍历的过程中,如果数组中有数值比max当前的值要大,就将数组中的值赋给max,直到数组遍历结束。#include <stdio.h>int main(){...

2019-06-30 00:05:28 230

原创 交换整型变量的值

给定两个整形变量的值,将两个值的内容进行交换。交换整型变量的值,最简单的就是创建临时变量,作为桥梁进行交换。#include <stdio.h>int main(){ //创建两个整数,并打印当前数值 int a = 10; int b = 20; printf("交换之前:%d %d\n", a, b); //创建临时变量,当做a和b交换的桥梁。交换之后打...

2019-06-29 23:46:31 179

原创 闰年判断

判断1000年---2000年之间的闰年 。闰年是能被4整除但不能被100整除的年份和能被400整除的年份。#include <stdio.h>#include <stdlib.h>int main(){ //给定需要判断的闰年的范围 for (int i = 1000;i <= 2000;++i) { //给出闰年判断条件:能被4整除同时...

2019-06-29 23:08:28 67

原创 九九乘法口诀表

这是一个简单的利用循环写出来的小程序。使用for循环进行编写:#include<stdio.h>#include<stdlib.h>int main(){ for (int i = 1;i < 10;++i) { for (int j = 1;j <= i;++j) { printf("%d*%d=%d", j, i, i *...

2019-06-28 11:31:41 122

原创 打印100~200 之间的素数

素数又称为质数。一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数;否则称为合数。素数的求解方法有两种1、只需要用其去取余1~它本身,如果只有一和它本身可以取余,n那么他就是素数。#include<stdio.h>#include<stdlib.h>int main(){ //给定需要求得素数的范围100~200, for (in...

2019-06-28 11:13:01 180

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除