- 博客(20)
- 收藏
- 关注
原创 实现简单的动态通讯录
通讯录可以用来存储1000个人的信息,每个人的信息包括:姓名、性别、年龄、电话、住址提供方法:1. 添加联系人信息2. 删除指定联系人信息3. 查找指定联系人信息4. 修改指定联系人信息5. 显示所有联系人信息6. 清空所有联系人7. 以名字排序所有联系人使用柔性数组可以实现动态;#ifndef _LINKMAN_H_#define _LINKMAN_H_#incl...
2018-09-12 23:38:20
272
原创 用C实现简单的静态通讯录
实现一个简单的通讯录,主要是对结构体的使用;linkman.h#ifndef _LINKMAN_H_#define _LINKMAN_H_#include<stdio.h>#include<Windows.h>#include<string.h>#pragma warning(disable:4996)typedef struct Li...
2018-09-12 23:32:52
287
原创 模仿qsort的功能实现一个通用的冒泡排序
#include<stdio.h>#include<Windows.h>#include<string.h>int cmp1(const void *x, const void *y){ return (*(int *)x) - (*(int *)y);}char cmp2(const void *x, const void *y){...
2018-09-10 00:44:57
201
原创 C回顾4之位的应用
1.写一个函数返回参数二进制中 1 的个数#include<stdio.h>#include<stdlib.h>#pragma warning(disable:4996)int count_one_bits(unsigned int value){ int count = 0; for (int i = 0; i < 32; i++) { i...
2018-09-10 00:39:17
142
原创 模拟实现printf
模拟实现printf函数,可完成下面的功能 // //能完成下面函数的调用。 //print("s ccc d.\n","hello",'b','i','t',100); //函数原型: //print(char *format, ...) // #include<stdio.h>#include<windows.h>#include<st...
2018-09-09 00:39:21
492
原创 C回顾3之递归的使用
1.递归和非递归分别实现求第n个斐波那契数。#include<stdio.h>#include<windows.h>#pragma warning(disable:4996)int fib(int n)//迭代{ int first = 1; int second = 1; int third; while (n > 2) { n--;...
2018-09-09 00:37:07
130
原创 C回顾2
1.编写代码模拟三次密码输入的场景。 最多能输入三次密码,密码正确,提示“登录成功”,密码错误,可以重新输入,最多输入三次。三次均错,则提示退出程序。#include<stdio.h>#include<windows.h> int main(){ int i = 0; char arr1[7] = "123456"; char arr2[10]...
2018-09-06 17:40:49
147
原创 C回顾1之二分查找
1.实现在整型有序数组中查找想要的数字,找到了返回下标,找不到返回-1.(折半查找)#include<stdio.h>int main(){ int a[] = { 1,2,3,4,5,6,7,8,9,10 }; int left = 0; int right = sizeof(a) / sizeof(a[0])-1; int key = 7; int mid = ...
2018-09-06 17:31:24
123
原创 Linux系统目录、重要命令与权限及gcc/g++, gdb, vim的安装
一、系统目录当我们在Linux下打开根目录后,可以发现有很多目录,我们来了解一下Linux下的一些重要目录/proc, /sys, /SElinux, /bin, /usr/lib, /usr/local, /var, /tmp:①/proc存放进程文件(虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息,它的内容不在硬盘上而是在内存里);②/sys该文件系统是内核设备树的...
2018-06-20 23:13:44
371
原创 自定义类型:结构体、枚举与联合
结构体1、结构体的声明基础知识:结构是一些值的集合,这些值称为成员变量,结构的每个成员可以是不同的变量。结构体也是一种类型。结构的声明:struct tag //struct 关键字 tag 名称(标签)(可以但不建议省略){ member_list; //成员不能为空(C语言中)}variable_list; //可以省略举个例子:struct Stu ...
2018-05-29 18:58:24
298
原创 深入理解指针之高级指针
在指针中,还有指针数组、数组指针、函数指针、函数指针数组、函数指针的数组的指针这样一些高级指针,所以我们需要了解并掌握它们的含义和用法:我们得先知道, 指针是和数组无关的:1.指针是一种类型;数组也是一种类型;2.指针可作左值,数组名却不可以;一、指针数组int *arr1[10];char *arr2[4];char **arr3[5];如上,便是指针数组,那么指针数组是数组还是指针?#是数组...
2018-05-23 13:01:49
1176
原创 可变参数列表解析
C语言中的可变参数是一个比较有意思的实现,通过将函数实现为可变参数的形式,可以使得函数可以接受一个以上的任意多个参数(不固定)。例如我们常用到的printf,它就是通过可变参数的形式可以传入多个参数,我们看一下printf在MSDN中的介绍:第一个参数是必须要传入的const char*类型,而第二个则是省略号,由此可知后面的参数类型和个数还不确定。下面我们来看一下可变参数的用法:首先,我们得知道...
2018-05-19 00:28:47
207
原创 函数的调用过程之栈帧的创建与销毁
要想深度的理解函数,我们就得深入的研究一下函数的调用过程。这个过程要为函数开辟栈空间,用于本次函数的调用中临时变量的保存、现场保护,这块栈空间我们称之为函数栈帧。首先,我们需要了解一下内存的划分:其次我们需要了解一下栈(stack):栈遵循的是”先进后出“或”后进先出“;入栈:push出栈:pop下来就是CPU了,我们需要知道一些相关的寄存器:通用寄存器:EAX、EBX、ECX、EDXEIP(PC...
2018-05-11 15:55:20
229
原创 用c语言实现简易版扫雷
简易版扫雷的原理:在10x10的方格中存入1和0,1(即雷)由电脑随机产生并放入,玩家进行判断并输入<x,y>(x为列,y为行),若方格中为1,则玩家踩中雷,输出“Game Over”,若为0,则未踩中雷,显示周围的雷的数量并循环,直至判断出所有的0,玩家胜利.首先,我们需引入头文件:#ifndef _GAME_H_#define _GAME_H_#include<stdi...
2018-04-23 12:45:29
1136
原创 用c语言实现交换两个数的内容的三种方法
第一种方法:创建一个临时变量,实现两个数的交换#include<stdio.h>int main(){ int a = 10; int b = 20; int tmp; tmp = a; a = b; b = tmp; printf("%d %d", a, b); system("pause"); return 0;}第二种方法:用数学的思想,#include...
2018-04-22 23:31:52
807
原创 猜数字游戏
猜数字游戏:根据系统提示猜出100以内的随机数(利用二分法能最快寻找出来)#pragma warning(disable:4996)#include<stdio.h>#include<stdlib.h>#include<time.h>void menu(){ printf("###############################\n"); ...
2018-04-20 16:29:38
321
原创 用c语言实现三子棋
用c语言实现简单的三子棋游戏...头文件game.h#ifndef _GAME_H_#define _GAME_H_#include<stdio.h>#include<windows.h>#include<stdlib.h>#include<time.h>#pragma warning(disable:4996)#define R...
2018-04-18 23:26:52
193
原创 C语言操作符的总结
操作符分为:(1)算数操作符(2)移位操作符(3)位操作符(4)赋值操作符(5)单目操作符(6)关系操作符(7)逻辑操作符(8)条件操作符(9)逗号表达式(10)下标引用、函数调用和结构成员算数操作符+ - * / %1.除了%以外,其他的可以用作于整数和浮点数。2.对于/操作符如果两个操作数都为整数,则执行整数除法;而只要有浮点数就执行浮点数的除法;且分母不为0。3.%操作符的两个操作数...
2018-04-06 17:11:32
144
原创 迈向我的IT之路
我是董波,来自于西安工程大学通信专业的一名大三学生。由于专业的原因,之前我对这个行业只是懂一些皮毛,许多专业知识都不是很懂。到了大三后,慢慢感受到了即将到来的就业问题,我便开始思考,未来我到底要做什么,什么样的工作才是我想做的。经过了解,最终做了进入IT行业的决定。对于我目前的实力,我还是知道的,接近于从零开始学。不过,笨鸟先飞这个道理我还是懂的,想要成为一个厉害的程序猿,自然离不开付出比别人还要...
2018-03-24 20:50:03
238
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅