开源/成品: C语言课设作业 – 北斗神拳游戏

在夏树鸽掉的这几个月时间, 也不完全是在忙课设, 大部分时间都在上网课, 花在这个课设题目的时间上还挺少。这次的小组课设游戏主题是“北斗神拳”, 开工时间大概是在上周三, 截止到周五下午七点左右吧, 虽然很简单, 但是还是在博客这边留个纪念, 我的大一生活呀。

继续阅读开源/成品: C语言课设作业 – 北斗神拳游戏

夏树的C语言篇 – 控制台获取鼠标操作

0.写在前面

在前一周的大一C语言课设Ⅱ结束之后, 虽然下周还有新开的课程, 但是总算有时间来更新一下博客了。毕竟这段时间一鸽就是几个月, 对于获取鼠标操作,班里大部分同学应该都是用EasyX的函数实现的样子, 如果不使用EasyX我们应该怎么做呢?那就不得不提上一篇说的ReadConsoleInput这个函数了, 当然还需要其他的一些函数配合使用。

继续阅读夏树的C语言篇 – 控制台获取鼠标操作

夏树的C语言篇 – 修改控制台窗口大小

0.写在前面

前些阵子在完成C语言打卡任务的时候遇到了调用system函数调整控制台窗口大小的时候无法通过ReadConsoleInput监听鼠标事件的问题, 经过了一番修改, 终于将这个问题解决了。那么接下来, 夏树将介绍两个调整控制台窗口大小的方法 (ReadConsoleInput的问题在下一篇文章介绍…吧?)

继续阅读夏树的C语言篇 – 修改控制台窗口大小

夏树的C语言篇 – 获取Bmp位图的宽高

0.写在前面

最近才开始研究C语言控制台贴图的内容(同学格斗游戏都快做完啦?!), 之前做课设的时候一直感觉模模糊糊的. 然后想自己封装一套用来贴图的库, 类似于EasyX? 然后就遇到了需要获取Bmp位图宽高的问题, 搜了下发现讨论区提到使用GetObject或者GetBitmapDimensionEx可以实现, 但是在实际使用过程中还是存在一定的区别的。

继续阅读夏树的C语言篇 – 获取Bmp位图的宽高

微信小程序 – 解决scroll-view制作横向滚动导航时的flex布局失效

0.写在前面

夏树进入大学之后的第一个寒假终于到了, 又可以安心地投入摸鱼事业(转战微信小程序), 为了熟悉小程序的开发(现在还只是熟悉一下WXML的语法), 我决定模仿摸一个”滴滴出行”的小程序页面!

下面记录的是我在制作一个横向滚动导航时出现的scroll-view使flex布局失效的问题以及相关的解决办法。

继续阅读微信小程序 – 解决scroll-view制作横向滚动导航时的flex布局失效

夏树的网页设计篇 – 栅栏布局整理

0.写在前面

早些时候, 栅栏布局(也称栅格系统)是内置于Bootstrap的一套响应式、移动设备优先的流式布局,之后也被其他前端框架所应用。响应式栅栏布局的使用让应用该布局的元素随着屏幕或视口(viewport)尺寸的增加,系统会自动分为最多12列,便于网页的分块排版。不过仅仅是为了使用栅栏布局便引入一整套前端框架,显然是考虑欠妥的,作为一篇笔记存档,本文将在下面的内容里整理介绍独立的响应式栅栏布局。

css-grid-layout

继续阅读夏树的网页设计篇 – 栅栏布局整理

夏树的C语言篇 – 简易Kmeans类聚算法实现对点集的分组

0.写在前面

夏树大一上学期为时一周的C语言课设就在昨天周五结束了。其中印象比较深刻的就是课设中有一题运用Kmeans算法对点集实现分组的题目啦(顺便自己试着摸了下GDI的一些函数),然后今天抽出些时间来整理一下,先上最后实现的结果:

kmeans-best-grouping_1.jpg

kmeans-best-grouping_2.jpg

1.问题描述

随机生成一组位于二维坐标系的点集(15<=点集元素个数N<=65),这些点不重合,每个点的位置由x,y值决定,x,y为整数且0<x<80,0<y<40。现在想知道这些点按距离远近该分成几个组合适,已知分组值K备选范围从1-10,输入K值,请你按以下方法画出分组结果:

  • (1) 从N个数据点中随机挑选K个不同点作为K个组的初始中心起点(组中心);
  • (2) 计算所有点到K个组中心的距离(欧式距离),并把它归到距离最近的组(如果有多个组距离一样,随便选一个归入);
  • (3) 更新K个组的中心值(求出该组所有点的x平均值和y平均值,作为新的组中心);
  • (4) 重复(2)~(3)步直至新的组中心和原来的组中心差值小于指定阈值(人为设置),或超出最大重复次数(人为设置),算法结束;
  • (5) 在控制台画出K组分组结果,每组用不同数字表示,使用0,1,2,3….9分别表示10个组。

继续阅读夏树的C语言篇 – 简易Kmeans类聚算法实现对点集的分组

小白: 从零开始使用fail2ban

0.内容导入

(´• ᗜ •`) ◞因为作为一个linux入门级别的小白, 很多人都会把一些web面板(比如宝塔面板?)作为自己管理vps的首选, 而当我一段时间登录宝塔面板之后, 有时就会看到提示发现自己的SSH登录竟然失败了上万次! 可这都不是我干的呀(我不是我没有!) 如果自己的SSH密码真的被暴力破解了怎么办呢? 那么…试试fail2ban?

继续阅读小白: 从零开始使用fail2ban

[转载]flex布局语法教程

网页布局(layout)是CSS的一个重点应用。

布局的传统解决方案,基于盒状模型,依赖 display属性 + position属性 + float属性。它对于那些特殊布局非常不方便,比如,垂直居中就不容易实现。

2009年,W3C提出了一种新的方案—-Flex布局,可以简便、完整、响应式地实现各种页面布局。目前,它已经得到了所有浏览器的支持,这意味着,现在就能很安全地使用这项功能。

Flex布局将成为未来布局的首选方案。本文介绍Flex布局的语法。

继续阅读[转载]flex布局语法教程