
语言
ZHY_xz
这个作者很懒,什么都没留下…
展开
-
Linux下的指令: 查找指令:find
Linux下find命令在目录结构中搜索文件,并执行指定的操作。 1. Linux下find命令格式: $ find pathname -options [-print -exec -ok …]2. 命令功能: 用于在文件树中查找文件,并作出相应的处理(可能访问磁盘)。3. 命令参数: pathname**:find命令所查找的目录路径(也就是要在哪个目录下查找)。例如用 .**原创 2017-03-27 11:17:39 · 812 阅读 · 0 评论 -
通讯录动态版(动态内存开辟)
实现一个通讯录;通讯录可以用来存储1000个人的信息,每个人的信息包括:姓名、性别、年龄、电话、住址提供方法:1. 添加联系人信息2. 删除指定联系人信息3. 查找指定联系人信息4. 修改指定联系人信息5. 显示所有联系人信息6. 清空所有联系人7. 以名字排序所有联系人#define _CRT_SECURE_NO_WARNINGS 1#inclu原创 2016-08-07 16:05:05 · 312 阅读 · 0 评论 -
模拟实现strrstr
模拟实现strrstr#include#include#include#includechar *my_strstr(const char *dest, const char *src)//查找子字符串的函数{ char *p = NULL; char *q = (char*)src; assert(dest); assert(src); while(*dest) {原创 2016-08-06 16:13:43 · 318 阅读 · 0 评论 -
模拟实现strcpy 模拟实现strncpy 模拟实现strcat 模拟实现strncat 模拟实现strcmp 模拟实现strncmp 模拟实现memcpy 模拟实现memmove
//模拟实现strcpy#include#include#includevoid my_strcpy(char *dest, const char *src){ assert(src); while(*dest++ = *src++) ;}int main(){ char arr1[20] = {0}; char arr2[] = "abcdef"; my_strcp原创 2016-07-30 14:25:26 · 567 阅读 · 0 评论 -
1.实现一个函数,可以左旋字符串中的k个字符。 AABCD左旋一个字符得到ABCDA AABCD左旋两个字符得到BCDAA 2.判断一个字符串是否为另外一个字符串旋转之后的字符串。 例如:给定s1
1.实现一个函数,可以左旋字符串中的k个字符。AABCD左旋一个字符得到ABCDAAABCD左旋两个字符得到BCDAA将一个字符串左旋k个,首先想到将一个字符串左旋一个,然后把得到的这个新字符串在进行左旋一次,总共这样循环k次,就得到左旋k次后的字符串比如:abcdef左旋一次得到bcdefa,再把bcdefa左旋一次,得到cdefab,这样进行下去就可得到左旋k次后的原创 2016-07-25 14:28:10 · 806 阅读 · 0 评论 -
在屏幕上打印杨辉三角
#include#includevoid Pascal_triangle(int arr[100][100], int n){ int i = 0; int j = 0; arr[1][1]=1; if(n==1) { arr[n][n]=1; } else { for(i=2; i<=n; i++) { for(j=1; j<=i; j++) {原创 2016-06-29 17:06:48 · 367 阅读 · 0 评论 -
用二分搜索法搜索一个数是否在一个数组中出现,如果出现输出其下标
#include#includeint Binary_Search(int arr[], int sz, int n,int left, int right){ int mid = 0; while(left<=right) { mid = left-((left-right)>>1);//求这个区间里中间的那个数的下标 if(arr[mid] == n) { ret原创 2016-06-29 16:52:48 · 913 阅读 · 0 评论 -
用c语言编写猜随机数的游戏
用c语言编写猜随机数的游戏:#include#include#includeint main(){ int input=1; int num = 0; while(input) { int answer = 0; printf("1.进入游戏 0.退出游戏\n"); scanf("%d",&input); srand(time(NULL));/*这是两个函数!一原创 2016-06-29 16:26:30 · 1470 阅读 · 0 评论 -
在屏幕上输出以下图案: * *** ***** ******* ********* *********** ************* ********
1在屏幕上输出以下图案: * *** ***** ******* ********* ************************ *********** ********* ******* ***** *** *#include#includevoid print1(cha原创 2016-06-25 16:18:29 · 4843 阅读 · 1 评论 -
交换两个变量的值,用第三变量,用函数
#include<stdio.h>int main()//这是用第三变量交换,这种效率是最高的{ int a=3; int b=5; int tmp=0; tmp=a; a=b; b=tmp; printf("a=%d,b=%d\n",a,b); return 0; }原创 2016-05-26 12:24:18 · 1588 阅读 · 0 评论 -
请写一个带参数的宏来求两个数中的最大值。
请写一个带参数的宏来求两个数中的最大值。 求两个数中的最大值必定要返回一个值,可以直接写成表达式的形式。如下:#define MAX(x,y) (x)>(y)?(x):(y) 但是这句代码有点问题,像下面这样调用:#include#include#define MAX(x, y) (x) > (y) ? (x) : (y)int fun(原创 2017-07-23 15:37:13 · 1665 阅读 · 0 评论 -
写一个函数判断机子大小端的问题
小端机就是存放数据时, 数据的低位存在低地址,高位存在高地址 大端机就是存放数据时, 数据的低位存在高地址,高位存在低地址 代码如下:#include<stdio.h>#include<stdlib.h>void port(){ int a = 1; int b = (char)a; if(b == 1) printf("小端\n");/原创 2017-07-23 16:28:13 · 914 阅读 · 0 评论 -
斐波那契数列
考点:注意返回值为 long long 型,高效率1 递归缺点:耗费时间,为什么耗费时间?要重复计算一个值多次,并且多次调用函数需要 开辟自己的栈帧空间时间复杂度:O(fib(n))空间复杂度:O(n)longlong fib(intn){ if(n 0) return0; if(n原创 2017-07-19 21:18:18 · 262 阅读 · 0 评论 -
实现c语言注释转换为c++注释
次篇文章将实现 c语言注释转换为c++注释例如,将下面的c语言注释转换为c++注释// 1.一般情况/* int i = 0; */// 2.换行问题/* int i = 0; */int j = 0;/* int i = 0; */int j = 0;// 3.匹配问题/*int i = 0;/*xxxxx*/// 4.多行注释问题/*int i=0;int j = 0;int原创 2016-08-11 12:28:50 · 541 阅读 · 0 评论 -
打印100~200 之间的素数
素数:素数又称质数,有无限个。一个大于1的自然数,除了1和它本身外,不能被其他自然数整除,换句话说就是该数除了1和它本身以外不再有其他的因数;否则称为合数。 解题思路:首先将100-200之间的数依次拿出来,除以比它小的数(1和它本身除外),若余数都不为0,则此数为素数。 下面为主要程序代码://文中count的作用:如果所得到的余数有为0的;就将count置为1,如果所有的余数都不为0;那么c原创 2016-08-13 12:21:19 · 1969 阅读 · 0 评论 -
Linux 下进入一个目录所需要的权限
在Linux下,想进入一个目录,就必须获有一定的权限。比如现在有一个come目录,我们在这个目录下创建一个dir目录,然后将dir这个目录的所有权限取消掉。 如图: 1.创建目录 2. 取消所有权限 3.此时我们进入这个dir目录,发现进不去,提示是没有权限 4.然后我们开始逐次添加权限 我们通过上面的几组图片可以看出,当有(x)权限的时候就可以进入该目录了。 下面我们原创 2017-03-22 22:06:55 · 898 阅读 · 1 评论 -
停车场模拟管理问题
问题描述 设停车场是一个可停放n辆车的狭长通道,且只有一个大门可供汽车进出。汽车在停车场内按车辆到达时间的先后顺序,依次由北向南排列,(大门在最南端,最先到达的第一辆车放在车场的最北端)。若停车场内已经停满n辆车,那么后来的车只能在门外的便道上等候。一旦有车开走,则排在便道上的第一辆车即可开入。当停车场内某车要离开时,在它之后进入的车辆必须先退出车场为它让路,待该车开出大门外,其他车辆再按原次序进原创 2016-12-17 23:12:45 · 3081 阅读 · 2 评论 -
C++从入门到放弃
原创 2016-12-01 22:10:24 · 872 阅读 · 0 评论 -
用循环和递归处理迷宫问题
1. 用循环解决迷宫问题 先看下图的迷宫 这里的1代表墙,0代表通道。(只解决简单的迷宫是否有出口问题或者输出一条路径) 首先我们需要接收这样一个迷宫,那就定义一个二维数组来保存它。#define N 10int maze[N][N];void GetMaze(int *arr, int n){ FILE *f = fopen("test.txt","r");//test.t原创 2016-12-01 17:31:19 · 819 阅读 · 0 评论 -
模拟实现 队列
先介绍一下队列: 队列(queue)在计算机科学中,是一种先进先出的线性表。 它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作。进行插入操作的端称为队尾,进行删除操作的端称为队头。队列中没有元素时,称为空队列。 由于队列在队头进行删除,队尾进行插入,所以用链表进行实现就比较方便。 队列采用的FIFO(first in first原创 2016-11-29 23:22:49 · 311 阅读 · 0 评论 -
模拟实现 栈
栈:只允许在栈顶进行删除和插入操作的顺序表。(FILO,先进后出) 如下图: 在栈里面有以下几项基本操作: pop()//删除栈顶数据 push(data)//在栈顶插入一个数据data top()//返回栈顶元素 size()//返回栈中元素的个数 empty()//判断栈是否为空下面进行代码实现:#include<iostream>using namespace std;te原创 2016-11-28 22:35:29 · 272 阅读 · 0 评论 -
继承与派生
所谓继承就是从先辈处得到属性和行为特征。专业的说就是在已有类的基础上创建新的类,新类可以从一个或多个已有类中继承成员函数和数据成员,而且重新定义或加进新的数据和函数,从而引成类的层次或等级。其中,已有类称为基类或父类,在他基础上建立的类称为派生类或子类。 上图是简单的学生分类图 下面通过一个例子说明为什么要使用继承。 现在有一个学生类 Student, 它含有 number, name,原创 2016-11-28 21:19:32 · 370 阅读 · 0 评论 -
将数组A中的内容和数组B中的内容进行交换。(数组一样大)
假设这是一个整形数组,只需定义一个第三变量进行交换即可。 代码如下:#include<stdio.h>#include<stdlib.h>void print(int arr[], int sz)//输出数组元素{ int i = 0; for(i=0; i<sz; i++) { printf("%d ",arr[i]); } prin原创 2016-08-23 11:40:34 · 329 阅读 · 0 评论 -
写一个函数返回参数二进制中 1 的个数 比如: 15 0000 1111 4 个 1 程序原型: int count_one_bits(unsigned int val
写一个函数返回参数二进制中 1 的个数 比如:15 二进制为: 0000 1111 4 个 1 程序原型: int count_one_bits(unsigned int value) { // 返回 1的位数 }如果让我们求一个十进制数中1 的个数,我们会将这个数除以10之后看余数是不是1,然后将得到的商除以10看余数是不是1,依次类推,直到商为0. 如下图解释原创 2016-08-20 23:49:13 · 1098 阅读 · 0 评论 -
求10 个整数中最大值
求10 个整数中最大值,首先定义一个变量max,保存最大值。起初我们先认为第一个数为最大值,将第一个数付给max,然后用max与第二个数比较,如果第二个数比当前的max大,那就把第二个数认为是最大的数付给max,再用max与第三个数比较,依次类推,便可以得到最大的数。#include<stdio.h>#include<stdlib.h>int main(){ int i = 0;原创 2016-08-18 17:42:32 · 682 阅读 · 0 评论 -
计算1000年~2000年之间的闰年
计算1000年~2000年之间的闰年: 闰年: ①、普通年能整除4且不能整除100的为闰年。(如2004年就是闰年)②、世纪年能整除400的是闰年。(如2000年是闰年,1900年不是闰年)写个for循环然后判断就行了,count是计数,看1000-2000年之间有多少个闰年。#include<stdio.h>int main(){ int i = 0; int count原创 2016-08-14 15:56:40 · 3174 阅读 · 0 评论 -
打印乘法口诀表
打印乘法口诀表用两个for循环(嵌套)就可以解决了 外层循环控制行,内层循环控制列。 代码如下:#include<stdio.h>#include<stdlib.h>int main(){ int i = 0; int j = 0; for(i=1; i<10; i++) { for(j=1; j<=i; j++) {原创 2016-08-14 12:02:24 · 287 阅读 · 0 评论 -
STL中map,set的使用
Map: 1.定义: Map是标准关联式容器之一,一个map是一个键值对序列,即(key ,value)对。它提供基于key的快速检索能力,在一个map中key值是唯一的。2.Map常用的方法主要有:insert,erase,size,count,begin,end,find,clear,empty。insert方法:在map中插入一个元素,map中记录的元素通常为键值对,所以,在存储时会把,键原创 2017-02-15 23:27:18 · 490 阅读 · 3 评论