- 博客(26)
- 收藏
- 关注
原创 51单片机第一天
LED灯代码#include <reg51.h>sbit p1_0 = P1^0;sbit K1 = P0^0;sbit K2 = P0^1;unsigned char i = 0;unsigned char j = 0;void delay_us(unsigned char t) //延迟一微秒{ while(--t);}void del...
2018-07-21 21:01:31
257
原创 C++中的继承与派生
C++中为了增加代码的复用性,引入了继承的概念1.继承的定义:用已经创建好的类来创建新的类,新类具有原来类的属性和成员,而且可以对原先的类进行修补。新类称为子类或者派生类,旧类称为基类或者父类。派生类定义:class 派生类名 :继承类型 基类名{ 。。。。(成员变量)};2.继承权限:(注意,父类中的所有private,在子类的内部和外部都不能进行访问,以下省略)publi...
2018-04-15 22:01:39
253
原创 约瑟夫环的各种算法
基于约瑟夫环,所写出的各种不同类型的代码。基本思想:1、建立一个长度为n的数组或者链。2、取出位置编号为(i+1)*m的数显示,将位置编号为(i+1)*m的数置0或者空(i=(i+m-1)%n i为编号,m为所要出去的数,n为总数)3、第一轮取完之后的数再组成一个新的数组,用2的办法再取;4、重复3的操作,最后剩下m-1个数字。递归型:int fun(int i,int
2018-01-27 22:55:46
687
原创 sizeof与strlen的异同
strlen: string.h库中所带的函数,用于统计字符串中字节个数,到\0为止。 sizeof: C语言所带的函数库中的运算符,运算符,运算符,不是函数。用于计算字节数。一般统计对象所占的单元(字节)的个数。需要注意的是,sizeof括号中只能运算,不能计算。sizeof用法注意:1、用于测定类型所占存储单元时,类型必须用于sizeof(类型。 2、用于数组时,表示数组所占的存储空间的
2017-11-22 20:33:47
207
原创 第一次作业 17.11.17
1.对于计算机系统,程序就是系统可以识别的一组有序的指令。进行解释程序的指令叫作编程语言。编程语言可以将程序转化为计算机可识别的语言进行操作。编程语言是用来指挥计算机想要的动作。C:面向过程,严谨,所有程序之爹。C++:面向对象,具有可继承和派生性。Python:脚本语言,简单,用的爽。2.(1)把源代码转换成机器码的过程(2)之前还会进行前期处理(3)过程中会
2017-11-17 18:27:47
246
原创 Linux基础指令及拾遗
一:cd(切换命令) cd /文件名 : 切换到指定文件名下 cd .. :返回上一级 cd ../文件名: 切换到上一级的指定文件名下 cd ./文件名 : 切换到当前目录下的指定文件名下 cd ~ :切换到上一次cd命令二:ls(列出命令) ls:直接列出当前目录下的所有文件夹与文件 ls -l :列出当前目录下所有文件夹与文件及其权限和其他信息(懒,不想发每一列代表的含义,大概提
2017-11-12 21:03:16
197
原创 十进制转化为二进制
#include #define BASE 3int main1(){int a = 12;scanf ("%d", &a);int s[10]= {0};int i = 0;while (a){s[i++] = a % 2;a /= 2;}for (i = i-1; i >= 0; i--){printf (
2017-08-07 09:10:08
248
原创 链式队列的基本应用(接上篇)
int QueueEmpty (Queue *q){if (q == NULL){errno = ERROR;return FALSE;}return q->front == NULL;}int EnQueue (Queue *q, QueueData x){if (q == NULL){errno = ERROR;retur
2017-08-07 09:08:19
319
原创 链式队列创建
#ifndef __LINKQUEUE_H__#define __LINKQUEUE_H__#define TRUE 1#define FALSE 0typedef int QueueData;typedef struct _node{QueueData data;struct _node *next;}Node;typedef
2017-08-07 09:06:14
353
原创 函数逆序字符串
#include #define BASE 16char num2char(int num){switch (num){case 0:return '0';case 1:return '1';case 2:return '2';case 3:return '3';case 4:return '4';case 5:r
2017-08-07 09:03:36
365
原创 十进制转化为十六进制
%#include #define BASE 16char num2char(int num){switch (num){case 0:return '0';case 1:return '1';case 2:return '2';case 3:return '3';case 4:return '4';case 5:
2017-08-07 09:02:00
365
原创 字符串及相关函数
#include #include // 字符串追加int main1(){char str1[100] = "hello ";char str2[] = "world";// 把字符出str2的内容 放到字符串str1的末尾// 注意:str1空间必须足够大,否则就会越界strcat(str1, str2);// 只将str2的前两个字符
2017-08-07 09:00:32
258
原创 计算器
#include #include int main(){// char *p = "I am from shanghai";// char str[] = "I am from shanghai";char str[] = "you are from shanghai";// 将整个字符串逆序char *p1 = str;char *p2 = st
2017-08-06 23:19:27
216
原创 句子逆序
#include #include int main(){// char *p = "I am from shanghai";// char str[] = "I am from shanghai";char str[] = "you are from shanghai";// 将整个字符串逆序char *p1 = str;char *p2 = st
2017-08-06 23:18:19
141
原创 链式栈的基本操作
#ifndef __LINKSTACK_H__#define __LINKSTACK_H__typedef int StackData;typedef struct _node{StackData data;struct _node *next;}Node;typedef struct _linkStack{Node *top;}LinkSt
2017-08-06 23:16:50
340
原创 链式队列的创建
#ifndef __LINKSTACK_H__#define __LINKSTACK_H__#include #include "LinkStack.h"#include "stdio.h"typedef int StackData;typedef struct _node{StackData data;struct _node *next;
2017-08-06 23:12:28
298
原创 找合法帧
#include #include // 在字符串str中寻找字符串sub,如果找到返回从sub开始的字符串char *findStr(char* str, char *sub){char *p = NULL;int len = strlen(sub); // 算字串的长度while(*str){if (strncmp(str, sub, len) =
2017-08-06 23:09:35
194
原创 李白打酒
#include int count = 0;void libai(int store, int flower, int alco, int pre, char *ch, int index){if(store == 0 && flower == 0){if (alco == 0 && pre == 0){int i = 0;for (i = 0
2017-08-06 23:07:56
173
原创 二叉树基本操作及其他2
int heigh(BTree* tree)//树高{if (tree == NULL)return FALSE;int ret = r_heigh(tree->root);return ret;}int r_heigh(BTreeNode* node){if (node == NULL)return FALSE;int lh = r_
2017-08-04 19:53:17
196
原创 二叉树的基本应用及其他
// pos 走的路径 值类似 110(左右右) 011 (右右左)// count 代表走的步数// flag 代表被替换的结点应该插入在新节点的位置,//如果是BLEFT 表示插在左边,BRIGHT表示插在右边int insert(BTree *tree,a data,int pos,int count,int flag)//二叉树插入{if (tree ==
2017-08-04 19:48:58
224
原创 二叉树定义
二叉树的定义typedef char BTreeData;// 二叉树的结点typedef struct _btreeNode{BTreeData data;struct _btreeNode *lchild; // 指向左孩子结点的指针struct _btreeNode *rchild; // 指向右孩子结点的指针}BTreeNode;// 二
2017-08-04 19:43:54
236
原创 希尔排序法1
int main7()//{int a[5] = {2,3,1,4,5};int len = sizeof(a)/sizeof(a[0]);int i,j,get,d=len;do{d=d/3+1;for(i=1;i{get = a[i];j = i-d;while(a[j]>=get && j>=0){a[j+d] = a[j];j=
2017-08-04 19:34:48
195
原创 三大经典排序法
int swap(int a[],int i,int j){int t;t = a[i];a[i] = a[j];a[j] = t;}int printA(int a[],int len){int i;for(i = 0; i{printf("%d\n",a[i]);}}int main2()//冒泡排序法{int a[5]
2017-08-04 19:30:34
312
原创 二叉排序法
int main6()//二叉排序法 {int a[5] = {2,1,3,4,6};int len = sizeof(a)/sizeof(a[0]);int i,j,get;for(i=1;i{int left = 0; int right = i-1;get = a[i];j = i-1;while(left == right)//找插入点
2017-08-04 19:29:02
431
原创 快速排序法
// 交换函数void swap (int a[], int i, int j){int tmp = a[i];a[i] = a[j];a[j] = tmp;}// 打印数组void printA (int *a, int len){int i;for (i = 0; i {printf ("%4d", a[i]);}prin
2017-08-04 19:26:28
144
原创 希尔排序1
int printA(int a[],int len)//打印{int i;for(i = 0; i{printf("%d\n",a[i]);}}int main(){int i,j,get;int a[5] = {2,3,1,6,9};int len = sizeof(a)/sizeof(a[0]);int d = 0;while(d
2017-08-04 17:54:36
171
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人