
成长
闆運厷
我们一起来学习呀!
展开
-
简单工具栏界面
工具栏提供了一种访问常用命令的方法。在WxPython中,可以通过调用Frame的CreateToolBar方法生成。另外一个常用的组件是状态栏。此组件可以用来显示操作的信息等。在WxPython中,可以痛过使用CreateStatusBar方法来创建状态栏。下面来演示创建:import wxclass MyFrame(wx.Frame): def __init__(self,parent): wx.Frame.__init__(self,parent,-1,u"简单工具栏原创 2020-09-02 15:44:52 · 155 阅读 · 0 评论 -
使用wxpython事件的绑定与处理
通过使用wx.EvtHandler类中的Bind方法可以将绑定事件的类型、事件的对象和事件的处理函数关联起来。下面为此方法的函数定义:Bind(event, handler, source = None, id = wx.ID_ANY, id2 = wx.ID_ ANY)一般是使用前三个参数,其中第一个参数为事件的类型,第二个参数为绑定此事件的处理函数。第三个参数默认为None,表示当前的Frame。当然,也可以将此事件绑定在特定的wxpython的窗口部件中。下面演示事件的绑定和处理过程:imp原创 2020-09-02 09:32:15 · 1351 阅读 · 0 评论 -
文字壁球小游戏
这是学习嵩天老师的课程,习得并引以为笔记。什么是文字壁球小游戏呢,就是以文字代替壁球,而运动跟壁球是一样的,要实现这个效果,主要解决文字的移动绘制及刷新,就是在绘制文字的基础上去移动文字使文字可以纵向和横向移动,下面用两段代码来展示一下效果,分别使用的是两种方法。import pygame,sysimport pygame.freetypepygame.init()size = width,height =600,400speed=[1,1]GOLD = 255,251,0BLACK =原创 2020-07-15 10:44:04 · 187 阅读 · 0 评论 -
pygame文字绘制机制
这是学习嵩天老师的课程,习得并引以为笔记。何为文字绘制?增在python中以print()来打印文字在屏幕上,但是在pygame上用print绘制特定的文字是十分困难的,所以不能使用print,而是要使用特定的函数。一般是使用pygame.freetype这个库,先来说说pygame.freetype这个库。使用pygame.freetype 向屏幕上绘制特定文体的文字,不能直接用print(),而是用像素根据字体点阵图绘制,不管是英文还是中文,都一样。freetype是绘制文字的增强方法,需使用额外的原创 2020-07-14 12:22:58 · 774 阅读 · 0 评论 -
Pygame图形绘制机制
这是学习嵩天老师的课程,习得并引以为笔记。图形绘制就是在屏幕上绘制简单的图形,如直线、曲线之类的,绘制图形,Pgame使用pygame.draw来实现,图形绘制后,返回一个矩形Rect类表示该形状,pygame.Rect表示一个矩形区域的类,用于存储坐标和长度信息,pygame用Rect类来操作图形/图像等元素,仅表达矩形范围,所以pygame的Rect有四个参数分别是左上角(left,top)还有宽度(width)和高度(height)一般来说,只要确定了这四个参数,就可以唯一确定一个矩形即范围,Rec原创 2020-07-13 11:51:01 · 288 阅读 · 0 评论 -
Pygame色彩机制
这是学习嵩天老师的课程,习得并引以为笔记。pygame是使用pygame.color表达色彩,Color类用于表达色彩类,使用RGB或RGBA色彩模式,A可选;RGB是红绿蓝三种颜色的的组合,RGB取值范围0~255,整数覆盖视力所能感知的所有颜色,Color类可以用色彩名字、RGBA值、HTML色彩格式等方式定义。如:color(name) ----> color(“grey”)color(r,g,b,a) ----> color(190, 190, 190, 255) 其中255原创 2020-07-12 10:44:25 · 513 阅读 · 0 评论 -
pygame处理事件函数
这是学习嵩天老师的课程,习得并引以为笔记。在pygame中同时仅能存在128个事件,pygame提供了八个事件处理函数,包括:事件处理:pygame.event.get()、pygame.event.poll()、pygame.event.clear()操作队列事件:pygame.event.set_blocked()、pygame.event.get_blocked()、pygam.event.set_allowed()生成事件:pygame.event.post()、pygame.event.E原创 2020-06-06 11:51:26 · 430 阅读 · 0 评论 -
壁球小游戏(鼠标型)
这是学习嵩天老师的课程,习得并引以为笔记。通过鼠标左键摆放壁球,按键按下时壁球停止运动;按键按下并且移动时,壁球随着鼠标移动;当按键释放时,壁球继续移动。实现该操作关键是对鼠标键按下和释放的合理处置。import pygame,syspygame.init()icon = pygame.image.load("Aatrox0.jpg") #surface对象pygame.display.set_icon(icon) #设置图标#vInfo = pygame.display.Inf原创 2020-06-05 17:23:21 · 286 阅读 · 0 评论 -
pygame鼠标事件处理
这是学习嵩天老师的课程,习得并引以为笔记。鼠标移动事件:pygame.event.MOUSEMOTIONevent.pos: 鼠标当前坐标值(x,y),相对于窗口左上角event.rel: 鼠标相对运动距离(x,y),相对于上一次事件event.buttons:鼠标按钮状态(a,b,c),对应于鼠标的三个键,鼠标移动时,这三个键处于按下状态,对应的位置值为1,反之则为0鼠标键释放事件:pygame.event.MOUSEBUTTONUPevent.pos:鼠标当前坐标值(x,y),相对于窗口左原创 2020-06-05 11:47:56 · 3881 阅读 · 0 评论 -
pygame键盘事件处理
这是学习嵩天老师的课程,习得并引以为笔记。什么是事件处理需求?就是响应用户键盘、鼠标等外设操作;响应屏幕的尺寸大小及模式变化;响应游戏情节的特定触发条件产生一些触发事件等等。pygame.event.EventType本质上是一种封装后的数据类型(对象)是pygame的一个类,表示事件类型,事件类型只有属性,没有方法。pygame提供了六个事件处理机制,包括系统、键盘、鼠标、游戏杆、窗口和用户定义。处理事件有:pygame.event.get()、 pygame.event.poll()、 pyga原创 2020-06-05 10:51:17 · 1379 阅读 · 0 评论 -
pygame屏幕绘制(3)
这是学习嵩天老师都课程,习得并引以为笔记。pygame提供了一个pygame.display.get_active()函数感知窗口是否被图标化。当窗口在系统中显示屏幕绘制时返回true,否则返回false。即该函数可以判断游戏窗口是否被最小化,在被感知最小化后,我们就可以进一步设置最小化后响应其它模式或者暂停游戏。我们可以在小球移动前加一行代码即可:import pygame,syspygame.init()icon = pygame.image.load("Aatrox0.jpg") #su原创 2020-06-04 09:39:06 · 247 阅读 · 0 评论 -
pygame屏幕绘制(2)
这是学习嵩天老师的课程,习得并引以为笔记。在接着上一篇文章继续进行学习。pygame.display.set_caption(title,icontitle=None)设置标题,其中title参数设置窗口的标题内容,icontitle设置图标化后的小标题(一般不设置,有些系统不显示)。另外pygame.display.get_caption() 返回当前设置窗口的标题及小标题内容,该参数可根据游戏情节修改标题内容。我们都知道游戏都是有图标的,那么怎么设置呢?我们可以利用pygame.display.s原创 2020-06-03 21:26:26 · 184 阅读 · 0 评论 -
pygame屏幕绘制(1)
这是学习嵩天老师的课程,习得并引以为笔记。pygame提供有一个pygame.display.set_mode可以设置游戏屏幕的尺寸以及相关设置,pygame.display.set_mode(r=(0,0), flags=0)其中r是游戏屏幕的分辨率,采用(width,height)方式输入;flags用来控制显示类型,可与|混合使用,有标签:pygame.RESIZABLE表示窗口大小可调;pygame.NOFRAME表示窗口无边界;pygame.FULLSCREEN表示窗口全屏显示。每种显示方式原创 2020-06-03 11:50:28 · 553 阅读 · 0 评论 -
壁球碰壁
这是学习嵩天老师的课程,习得并引以为笔记。首先是写一个框架,内容如下:import pygame,sys #引用库pygame.init()screen = pygame.display.set_mode((600,400))#设置窗体大小pygame.display.set_caption("游戏之旅")while True: #循环刷动 for event in pygame.event.get(): if event.type == pygame.QUIT:原创 2020-06-01 17:28:06 · 149 阅读 · 0 评论 -
基于python的动物判别系统
首先,代码是仿照别人的,自己做修改,如果不想看这篇文章的朋友可以去看原文:https://blog.youkuaiyun.com/dongjishuo/article/details/83025764?utm_source=app这篇文章更多是为了供自己学习记录痕迹罢了,顺便给朋友们参考学习!因为要输入前提条件,所以用 for 循环进行是一个不错的选择,当然,循环的列表则需要整合成数据库,还有规则库。看...转载 2020-03-20 18:22:17 · 2406 阅读 · 0 评论 -
公交线路管理
1 项目简介本项目是对公交车线路信息的简单模拟,以完成建立公交路线信息、修改公交路线信息和删除公交路线信息等功能。2 设计思路本项目的实质是完成对公交线路信息的建立、查找、插入、修改、删除等功能,可以首先定义项目的数据结构,然后将每个功能写成一个函数来完成对数据的操作,最后完成主函数以验证各个函数功能并得出运行结果。3 数据结构公交站点之间的关系可以是任意的,任意两个站点之间都可能相关。...原创 2020-01-24 09:39:40 · 3331 阅读 · 10 评论 -
图的遍历
图是一种比线性表和树更为复杂的数据结构。图的存储结构虽然没有顺序结构,但是它可以借助二维数组来表示元素之间的关系,即邻接矩阵表示法。图的链式存储有多种,邻接表、十字链表和邻接多重表。用邻接矩阵表示法表示图,除了一个用于存储邻接矩阵的二维数组外,还要一个一维数组来存储顶点信息。【形式说明】#define MaxInt 32767 //表示极大值#define MVNum 100 //...原创 2020-01-23 21:02:01 · 352 阅读 · 0 评论 -
二叉树的遍历
实验项目名称:二叉树基本操作的实现实验目的:1、掌握树的基本操作----遍历实验要求:1、分别用递归和非递归的方法实现一棵树的三种遍历实验过程:1、创建一颗二叉树;2、用递归算法实现对该树的三种遍历;3、用非递归算法实现对该树的三种遍历;4、输入选项:0或1,0为递归遍历,1为非递归遍历。5、根据输入的选项,分别调用递归或非递归算法输出先序、中序、后序遍历序列。#include &...原创 2020-01-18 20:41:16 · 201 阅读 · 0 评论 -
串的匹配模式操作
串是一种特殊的线性表,其特殊性表现在数据元素是一个字符,也就是说,串是一种串是一种受限的线性表。既然是线性表,那么同样可以有顺序和链式两种结构,但是从总体来看,串在链式存储结构中,他占用存储量大且操作复杂,不如顺序存储结构灵活。串的模式匹配比较著名的有BF算法和KMP算法,下面就用这两种算法,实现模式匹配并计算next值和修正next值。因为有next值和修正next值,所以,KMP算法的用到两次...原创 2020-01-17 20:20:46 · 226 阅读 · 0 评论 -
队列舞伴问题
今天是用队列的基本操作来解决舞伴问题的实验实验目的:1.掌握队列的定义及实现;2.掌握利用队列的基本操作。实验要求:1.使用链式结构完成队列的各种基本操作;2.补充完善舞伴问题。队列和栈相反,它是一种先进先出的线性表。只允许在表的一端进行插入,而在另一端进行删除。与栈不同,栈的插入和删除只在栈顶一端进行。队列的存储结构如下:typedef struct QNode{ QElemty...原创 2020-01-16 21:40:20 · 1465 阅读 · 1 评论 -
栈实现个位数四则运算
写一个程序,使得该程序能够完成个位数的四则运算,但要用到栈的基本操作。既然是实验就会有它的目的和要求。实验目的:1.掌握栈的定义及实现方法;2.掌握利用栈求解算术表达式的方法。实验要求:1.使用链式存储结构完成栈的各种基本操作;2.补充完成In©, Preced(t1,t2), Operate(a,theta,b)三个函数。栈是一种先进后出的线性表,既然是线性表,就可以有顺序形式,即顺序...原创 2020-01-15 20:46:59 · 460 阅读 · 2 评论 -
Point类改变坐标值
定义一个Point类,有坐标 x, y 两个成员变量;对Point类重载“++”、“- -”运算符,实现坐标值的改变。下面我简单写了一下,希望有不当的地方呢能够指出,谢谢。【完整代码】#include<iostream>using namespace std; class Point {private: int x,y;public: //在此改变要输入 x,y...原创 2020-01-14 16:35:34 · 1082 阅读 · 0 评论 -
线性表建立学生信息表
用线性表建立学生信息这是继上一次实验(顺序表)的后续,即用线性表的链式表示和实现,这个实验的要求相关事项这里就不再赘述,可以到我的上一篇文章去看,顺序表的内容也在上一篇文章,这里仅对单链表的操作进行表示和实现。初始化部分:即构造一个空链表。【算法描述】 Status InitList(LinkList &L) { L=new LNode; //新结点作为头结点 L...原创 2020-01-14 16:21:59 · 1677 阅读 · 0 评论 -
线性表建立学生信息表
用线性表建立学生信息表在实验课上,要求操作线性表的基本操作及其应用,这是第一次实验,用到得是顺序表结构。课程名:数据结构实验目的:(1)掌握线性表的定义;(2)掌握线性表的基本操作,如建立、查找、插入和删除等。实验要求:定义一个包含学生信息(学号,姓名,成绩)的顺序表,使其具有如下功能:(1)根据指定学生个数,逐个输入学生信息;(2)逐个显示学生表中所有学生的相关信息;(3)根据姓...原创 2020-01-13 17:21:56 · 6405 阅读 · 1 评论 -
雇佣兵
雇佣兵的体力最大值为 M,初始体力值为 0、战斗力为 N、拥有 X 个能量元素。当雇佣兵的体力值恰好为 M 时,才可以参加一个为期 M 天的战斗期,战斗期结束体力值将为 0。在同一个战斗期内,雇佣兵每连续战斗 n 天,战斗力就会上升 1 点,n 为当前战斗期开始时的战斗力。一个战斗期结束后,雇佣兵需要用若干个能量元素使其体力恢复到最大值 M,从而参加下一个战斗期。每个能量元素恢复的体力值不超过...翻译 2019-07-18 10:22:36 · 286 阅读 · 0 评论 -
最高的分数
蒜头君老师讲授的《计算概论》这门课期中考试刚刚结束,他想知道考试中取得的最高分数。因为人数比较多,他觉得这件事情交给计算机来做比较方便。你能帮蒜头君老师解决这个问题吗?输入格式输入两行,第一行为整数 n(1≤n<100),表示参加这次考试的人数。第二行是这 n 个学生的成绩,相邻两个数之间用单个空格隔开。所有成绩均为 0 到 100 之间的整数。输出格式输出一个整数,即最高...翻译 2019-05-21 16:45:43 · 2918 阅读 · 0 评论 -
三角形判断
给你三个正整数,分别表示三条线段的长度,请判断这三条线段能否构成一个三角形。输入格式输入共一行,包含三个正整数 a,b,c (1≤a,b,c≤100),分别表示三条线段的长度,数与数之间以一个空格分开。输出格式如果能构成三角形,则输出"yes",否则输出"no"。#include <stdio.h>int main(){ int a,b,c; scan...原创 2019-05-01 15:32:23 · 1081 阅读 · 0 评论 -
最大数输出
有三个整数,找到最大的数,并输出。输入格式输入为一行,包含三个整数 a,b,c (−1000≤a,b,c≤1000),数与数之间以一个空格分开。输出格式输出一行,包含一个整数,即最大的整数。做题思路:依此比较,要分别都有输出。#include <stdio.h>int main(){ int a,b,c,t; scanf("%d %d %d",&...翻译 2019-05-01 15:23:53 · 1452 阅读 · 1 评论 -
输出绝对值
绝对值用来表示一个数至原点的距离大小。输入一个浮点数,输出这个浮点数的绝对值。输入格式输入一个浮点数,其绝对值不超过 10000。输出格式输出这个浮点数的绝对值,保留到小数点后两位。因为是要求浮点的绝对值,所以直接用 fabs 求就可以啦,#include <stdio.h>int main(){ float n; scanf("%f",&n)...翻译 2019-04-21 11:14:03 · 2330 阅读 · 0 评论 -
判断字符串是否为回文
输入一个字符串,输出该字符串是否回文。回文是指顺读和倒读都一样的字符串。输入格式输入为一行字符串(字符串中没有空白字符,字符串长度不超过 100)。输出格式如果字符串是回文,输出"yes";否则,输出"no"。样例输入abcdedcba样例输出yes#include<stdio.h>#include<string.h>int main(){ ...翻译 2019-07-18 11:25:21 · 26992 阅读 · 6 评论 -
蒜厂奖牌计数
在一次运动会上,蒜厂的运动员参与了 n 天的决赛项目 (1≤n≤17)。现在要统计一下蒜厂所获得的金、银、铜牌数目及总奖牌数。输入格式输入 n+1 行,第 11 行是蒜厂参与决赛项目的天数 n。其后 n 行,每行三个用空格分开的不超过 3030 的非负整数,表示蒜厂某一天获得的金、银、铜牌数目。输出格式输出 1 行,包括 4 个整数,为蒜厂所获得的金、银、铜牌总数及总奖牌数,以一个...翻译 2019-07-16 11:49:21 · 1419 阅读 · 0 评论 -
整数序列的元素最大跨度
小蒜蒜有一个长度为 n 的非负整数序列,请计算序列的最大跨度值(最大跨度值 = 最大值减去最小值)。输入格式一共 2 行,第一行为序列的个数 n(1≤n≤1000)。第二行为序列的 n 个不超过 1000 的非负整数,整数之间以一个空格分隔。输出格式输出一行,表示序列的最大跨度值。样例输入63 0 8 7 5 9样例输出9#include <stdio.h>i...翻译 2019-07-16 11:59:11 · 1932 阅读 · 0 评论 -
救援
救生船从大本营出发,营救若干屋顶上的人回到大本营,屋顶数目以及每个屋顶的坐标和人数都将由输入决定,求出所有人都到达大本营并登陆所用的时间。在直角坐标系的原点是大本营,救生船每次从大本营出发,救了人之后将人送回大本营。坐标系中的点代表屋顶,每个屋顶由其位置坐标和其上的人数表示。救生船每次从大本营出发,以速度 50 米/分钟驶向下一个屋顶。达到一个屋顶后,救下其上的所有人,每人上船 1 ...翻译 2019-07-16 12:46:17 · 986 阅读 · 0 评论 -
人口增长问题
我国现有 x 亿人口,蒜头君想知道按照每年 0.1% 的增长速度,n 年后将有多少人?输入格式一行,包含两个整数 x 和 n,分别是人口基数和年数,以单个空格分隔。输出格式输出最后的人口数,以亿为单位,保留到小数点后四位。1≤x≤100, 1≤n≤100。输出时每行末尾的多余空格,不影响答案正确性样例输入13 10样例输出13.1306#include <stdio.h&...翻译 2019-07-17 13:34:54 · 2409 阅读 · 0 评论 -
买房子
蒜头君从现在开始工作,年薪 N 万。他希望在蒜厂附近买一套 60 平米的房子,现在价格是 200 万。假设房子价格以每年百分之 K 增长,并且蒜头君未来年薪不变,且不吃不喝,不用交税,每年所得 N 万全都积攒起来,问第几年能够买下这套房子?(第一年年薪 N 万,房价 200 万)输入格式一行,包含两个正整数 N(10≤N≤50),K(1≤K≤20),中间用单个空格隔开。输出格式如果在...翻译 2019-07-17 16:41:40 · 330 阅读 · 0 评论 -
函数指针的定义
在将程序装入内存后,每个函数都要占用一段连续的内存区域,而函数名就是这段内存区域的首地址(或称函数的入口地址)。可以把某个函数首地址赋给一个指针变量,使之指向该函数,然后通过这个指针变量调用该函数。习惯上把这种指向函数的指针变量称为函数指针变量,简称函数指针。定义函数指针变量的一般形式:类型标识符(* 指针变量名)(类型标识符1,类型标识符2…);其中第一个类型标识符表示被指函数返回值...转载 2019-04-25 17:50:17 · 730 阅读 · 0 评论 -
数据逆序存放
有 5 6 7 8 9 的大小排序,自然也会有 9 8 7 6 5 的逆排序,现在,编写一个函数,将一维数组中的数据逆序存放,也就是数组倒序,一起来尝试一把吧!#include <stdio.h>void conarry(int x[],int n); /*n为数组大小 */#define N 5int main(){ int a[N],i; for(i=0;i...原创 2019-04-20 16:16:15 · 2694 阅读 · 0 评论 -
引用数组元素
引用一个数组元素可以有以下两种方法:(1)指针法。有 *(a+i), *(p+i) 两种表现形式,都是用间接访问的方法来引用数组元素。(2)下标法。有a[i] 和 p[i] 两种形式。在编译时这两种形式也要处理成 *(a+i) 或 *(p+i),即先按“a+i x(一个元素占用字节数)”计算出第 i 号元素的地址,然后通过指针运算符 “ * ” 来引用该元素。下面举个例子看一下这两种用法...转载 2019-04-24 17:15:47 · 14610 阅读 · 0 评论 -
浮点相除余数
计算两个浮点数 a 和 b 的相除的余数,a 和 b 都是正数的。这里余数(r)的定义是:a=k×b+r,其中 k 是整数,0≤r<b。输入格式输入仅一行,包括两个浮点数 a 和 b。(0<a,b≤10000)输出格式输出也仅一行,a÷b 的余数。在这里 k 不是输入值,但 k 有它存在的意义,即a/b的值。 1. #include <stdio.h>int...转载 2019-04-17 16:44:28 · 742 阅读 · 0 评论 -
与圆相关的计算
给出圆的半径,求圆的直径、周长和面积。如果圆的半径是 r,那么圆的直径、周长、面积分别是2×r、2×π×r、π×r×r,其中约定 π/pi =3.14159。输入格式输入包含一个实数 r(0<r≤10,000),表示圆的半径。输出格式输出一行,包含三个数,分别表示圆的直径、周长、面积,数与数之间以一个空格分开,每个数保留 4 位小数。 1. #include<stdio...原创 2019-04-17 16:19:05 · 1189 阅读 · 1 评论