- 博客(26)
- 收藏
- 关注
原创 xshell评估过期解决办法
今天使用xshell5提示评估过期,然后在网上下载破解版的还是不行,解压了一堆垃圾文件,最后终于找到了解决办法:1、登录网景官网的下载页面:https://www.netsarang.com/download/down_form.html?code=522,页面截图如下:2、不要看到英文一脸懵逼,直接在页面中有红色*号的地方输入个人信息,licensetype 必须选 Home and Schoo...
2018-03-29 22:53:49 387
原创 通讯录
实现一个通讯录; 通讯录可以用来存储1000个人的信息,每个人的信息包括: 姓名、性别、年龄、电话、住址 提供方法: 1. 添加联系人信息 2. 删除指定联系人信息 3. 查找指定联系人信息 4. 修改指定联系人信息 5. 显示所有联系人信息 6. 清空所有联系人 7. 以名字排序所有联系人 头文件 linkman.h#ifndef __LINKMAN_H__#define __LINKMAN_...
2018-03-29 15:01:10 886
原创 结构体学生成绩
#include<stdio.h>typedef struct student{ int num; char name[20]; int Score1; int Score2; int Score3; float average;}student;student st[3];void CreateStudent(student st[]){ int i,j; float Aver...
2018-03-28 19:37:23 1685
原创 结构体复习总结
结构体先简单的介绍一下结构体结构体是一种类型,是一些值的集合,这些值称为成员变量。结构体的每个成员可以是不同类型的变量。 1. 结构体类型的创建struct Stu{char name[4];int age;char sex;}a,*p;这里Stu是结构体名称,a是结构体变量,*p是指向结构体的指针。在创建结构体时,结构体名称不能省略,否则无法引用结构体。 在定义结构体时不能出现类似递归的自调用,...
2018-03-28 17:29:48 246
原创 模仿qsort的功能实现一个通用的冒泡排序。
#define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include <stdio.h> int cmp(const void*n1, const void*n2) //判断n1,n2元素大小,n1比n2大返回正数;小返回负数,相同返回0 { return *(char*)n1 - ...
2018-03-28 17:27:10 199
原创 理解函数指针和定义 .理解函数指针数组和定义,
数组指针概念:数组指针是指针,只要是指针他就占4个字节;例如: 整形指针:int *p;能够指向整形数据的指针 浮点型指针:float *p;能够指向浮点型的数据的指针那么数组指针,同样的理解就是指向数组的指针。Eg: int (*p)[10]解释:这里的p由于小括号的原因和*先结合,所以他就是指针,然后指向的是一个大小为10的整形数组,所以p首先是一个指针,然后指向一个整形数组,即p的名字...
2018-03-28 16:50:59 427
原创 日期计算器,时间差,零食过期判断
今天买了袋牛肉干,知道生产日期,知道保质期,计算到今天还有多少天过期,是否可以食用#define _CRT_SECURE_NO_WARNINGS 1#include<stdio.h>#include<windows.h>int main(){ int a[13] = {0,31,28,31,30,31,30,31,31,30,31,30,31}; int last_d...
2018-03-27 13:08:48 4740
原创 计算器代码,指针实现
#define _CRT_SECURE_NO_WARNINGS 1#include<stdio.h>#include<math.h>#include<windows.h>int add(int a,int b){ return a+b;}int sub(int a,int b){ return a-b;}int mul(int a,int b){ return ...
2018-03-23 18:45:58 267
原创 linux环境 编译C语言文件
市面上常见的Linux都是发行版本,典型的Linux发行版包含了Linux内核、桌面环境和各种常用的必备工具,国内使用较多的是Ubuntu(乌班图)、CentOS、Deepin(深度Linux)。本教程以Deepin为例来讲述如何编译C程序。GeditGedit是一个简单实用的文本编辑器,拥有漂亮的界面,支持语法高亮,比 Vim 更易上手。本教程将Gedit作为C代码编辑器。Gedit的安装:su...
2018-03-22 14:10:20 349
原创 高级指针1
1.指针数组:指针数组是数组,是一个存放指针的数组。例:int *arr1[10] ;整型指针数组 char *arr2[4] ;字符指针数组 char **arr3[5] ;二级指针数组2.数组指针:是指针。(数组的地址)。指向数组。给数组指针+1,指向所指向数组的大小。例:int (*p)[10]整型数组指针。解释:p和*先结合,说明p是一个指针变量,然后指针指向是一个大小为10...
2018-03-22 12:14:18 104
原创 linux 指令基础
1、进入目录需要哪些权限, 在目录中执行增删查(cd, touch, ls, rm, mv等)改文件动作, 需要哪些权限.首先来了解一下,什么是权限,先利用touch命令创建一个temp文件,如图所示,给出了这条信息的含义,权限分为四种:r:可读w:可写x: 可执行_不具有权限(还有一种针对目录的权限:粘滞位 符号t)第一个_表示文件的类型:文件的类型分为以下几种:_ 普通文件d ...
2018-03-22 12:12:02 177
原创 实现1.strcpy 2.实现strcat 3.实现strstr 4.实现strchr 5.实现strcmp 6.实现memcpy
模拟实现strcpy (字符串拷贝)(后者拷贝到前者)#include <stdio.h>#include <string.h>#include <assert.h>char *my_strcpy (char *str_des , const char *str_source){ char *ret = str_des; assert(s...
2018-03-22 12:08:01 263
原创 .写冒泡排序可以排序多个字符串。
#include <stdio.h> #include <string.h> void bubble_sort_str(char *str[],int sz) { int i = 0; int j = 0; for (i = 0; i < sz - 1; i++) { ...
2018-03-16 21:15:55 276
原创 使用main函数的参数,实现一个整数计算器,程序可以接受三个参数,第一个参数“-a”
因为涉及main函数参数,所以在linux 下面比较容易实现int main(int argc, char *argv[], char *env[])1main的三个参数 :int argc,表示命令行参数加上程序路径的个数,最小为一char * argv[],表示main函数的命令行参数char * env[],表示环境变量首先要判断mian()函数的参数个数,如果小于4即,参数个数错误,代码如...
2018-03-16 19:57:48 831
原创 喝汽水,1瓶汽水1元,2个空瓶可以换一瓶汽水,给20元,可以多少汽水。
#include<stdio.h>#include<windows.h> int s(int t) { int z = 0; int h = 0; int sum = t; while(t>1) {if(t%2==0) { sum=sum+t/2; t=t/2; } else if(t%2==1) { sum=su...
2018-03-16 18:58:54 286
原创 判断一个字符串是否为另外一个字符串旋转之后的字符串。
#include <stdio.h> #include <windows.h> #include <string.h> int judge(char str1[],char str2[]) { int i = 0; int j = 0; int lenght = strlen(str1); for (j = 1...
2018-03-14 16:38:31 155
原创 实现一个函数,可以左旋字符串中的k个字符
左旋字符串,可以先将第一个字符和最后一个字符交换,然后进行一个循环,就可以解决这个问题了;具体代码如下:[cpp] view plain copy#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<Assert.h> void levo(char *pstr, int SZ,int key) { ...
2018-03-14 16:37:26 92
原创 可变参数解析
在日常写代码时,经常会用到“printf”函数,而printf函数可以传递多个参数,可以1个,2个,多个。而我们写函数时,会注意到自己定义的形参数量是已经定义好的,对比printf函就会发现该函数参数数量却是传递任意个数都可以输出的。如: printf("%d\n", 2017); printf("%s\n","I'm fine."); printf("%d %s\n", 2...
2018-03-14 16:34:30 143
转载 可变参数应用
利用可变参数列表:可变参数列表是通过宏来实现的,这些宏定义在stdarg.h中。值得注意的是:可变参数列表传参时,第一个传的参数的个数。步骤:1.定义一个va_list类型的变量 arg2.宏va_start(arg,num)---这个宏有两个参数,第一个参数为va_list类型的变量,第二个参数为可变参数列表之前的参数。作用就是使得 va_list 的变量指向可变参数列表的首地址。这才是一般意义...
2018-03-14 16:33:43 420
原创 递归非递归写函数
1.递归和非递归分别实现求第n个斐波那契数。方法1#include <stdio.h>#include <windows.h>#pragma waring (disable:4996)int factorial(int k){ if(k<=1) return 1; else return factorial(k-2)+factorial(k-1...
2018-03-14 16:28:56 617
原创 关于栈帧解析(函数调用开辟这东西)
一. 理解栈帧栈帧是什么,我们基本的理解是栈帧是栈帧也叫过程活动记录,是编译器用来实现过程/函数调用的一种数据结构。通俗来说栈帧就时C语言函数在调用的过程中的调用原理,就是当我们执行一个函数操作的时候,它的内部是如何实现的呢。二 .关于栈帧的背景知识1. 寄存器第一个寄存器ebp,基址寄存器,也叫做栈底寄存器。第二个寄存器esp,是栈顶寄存器。第三个寄存器pc指针,也叫做程序计数器,它永远指向当前...
2018-03-10 15:58:26 470
原创 模拟实现strcat函数
#include<stdio.h>#include<string.h>#include<stdlib.h>#include<assert.h>char* my_strcat(char *dest ,const char *src){ char *ret=dest; assert(dest!=NULL); assert(src!=NULL);...
2018-03-06 23:31:17 206
原创 模拟实现字符串拷贝
#include<stdio.h>#include<string.h>#include<stdlib.h>#include<assert.h>char* my_strcpy(char *dest ,const char *src){ char *ret=dest; assert(dest!=NULL); assert(src!=NULL);...
2018-03-06 22:56:29 180
原创 模拟实现函数strlen
#include<stdio.h>#include<string.h>#include<stdlib.h>#include<assert.h>int my_strlen(const char *str){ int i=0; assert(str!=NULL); while(*str!='\0') { i++; str++; } ...
2018-03-06 22:20:40 138
原创 linux快捷键汇总
为方便自己也方便他人,整理了Linux常用命令及快捷键。一部分百度补全的,不妥之处请留言指出用命令:文件和目录:# cd /home 进入 '/home' 目录# cd .. 返回上一级目录# cd ../.. 返回上两级目录# cd ...
2018-03-02 20:03:30 178
原创 扫雷游戏
扫雷游戏,大家都知道,相信都有一定的了解,规则就不多说了,下面看代码,我尽量的写清楚,写详细。用 VS2008写的game2.h注意写的时候要是函数用的比较多,这样写可以把结构写的更加清晰也方便修改#ifndef __GAME_H__#define __GAME_H__#define DEFAULT_COUNT 30// 设置30颗雷#define ROWS 10#define COLS 10v...
2018-03-02 19:24:41 265
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人