小菜鸟
文章平均质量分 52
qq_39078549
这个作者很懒,什么都没留下…
展开
-
自己写的三子棋
自己定义的头文件(函数声明):#ifndef A_H #define A_H#define ROWS 3 //定义行 #define COLS 3 //定义列 #include <stdio.h>#include <stdlib.h>#include <assert.h>#include <time.h>//棋盘...原创 2018-04-09 09:08:35 · 142 阅读 · 0 评论 -
C语言中的自定义类型:结构体、枚举、联合
我们知道c语言基本数据类型有: 本篇将重点介绍C语言中的自定义类型:结构体、枚举、联合结构体结构体定义:结构是一些值的集合,这些值称为成员变量。结构的每个成员可以是不同类型的变量。 构造: struct 结构体名 { 结构体所包含的变量或数组 };声明与定义struct Stu{ char name[20];//名字 int age;//...原创 2018-05-11 15:57:12 · 206 阅读 · 0 评论 -
指针了解一下
指针在c语言中,我们会频繁的使用指针,那么什么是指针?首先我们来看一段代码。#include <stdio.h>int main(){ int a = 10;//在内存中开辟一块空间 int *p = &a;//将a的地址存放在指针变量p中 return 0;}假如创建的变量a的地址为0x0000ff11,那么指针变量指向变量a,存...原创 2018-05-11 16:09:04 · 126 阅读 · 1 评论 -
C语言:函数的调用过程及栈帧的创建和销毁
一、说起函数调用,我们可能很快就想到:程序从main函数走起,遇到调用函数的语句,就跳转到此函数所在的语句块执行此函数,执行完之后再返回main函数继续执行程序。但是这只是笼统的描述,其实在函数内部,函数调用要经过一系列的复杂的过程,下面为大家一一详细叙述。 1.说到函数调用,我们不可避免的要说到栈帧的创建和销毁。函数调用过程要为函数开辟空间,用于本次函数的调⽤用中临时变量的保存、现场保护。这块...原创 2018-05-11 16:17:24 · 184 阅读 · 0 评论 -
stat函数与stat结构体
在Linux中,可以利用stat()函数来获取一个文件的状态#include &lt;sys/stat.h&gt;#include &lt;unistd.h&gt;int stat(const char *file_name, struct stat *buf);这个函数执行成功返回0,失败返回-1。取得的文件状态存放在buf指针指向的struct stat结构提中, struc...原创 2018-08-28 09:25:34 · 695 阅读 · 0 评论 -
C++中引用与指针的区别
请说出C++中引用和指针的区别。(1)当引用被创建时,它必须被初始化。而指针则可以在任何时候被初始化。 (2)一旦一个引用被初始化为指向一个对象,它就不能被改变为对另一个对象的引用。而指针则可以在任何时候指向另一个对象。 (3)不可能有NULL引用。必须确保引用是和一块合法的存储单元关联。进一步解析: 指针和引用都是 C++ 中的基本语法成份,它们既有联系,也有不同...原创 2018-08-28 09:45:28 · 365 阅读 · 0 评论 -
C++中的多态
什么是多态? 多态性(polymorphism)据说最早源自希腊语,从字面上理解就是多种形态,多种形式。具体到C++这种面向对象(OOP)的语言中,其实就是“一种接口,多种实现(方法)”。 多态可分为静态多态和动态多态,具体的分类情况如下: 静态多态和动态多态的区别其实只是在什么时候将函数实现和函数调用关联起来,是在编译时期还是运行时期,即函数地址是早绑定还是晚绑定的?...原创 2018-08-28 10:00:22 · 168 阅读 · 0 评论 -
C++中的继承
继承:是面向对象程序设计中使代码可以复用的重要手段,它允许程序员在原有类特性的基础上进行扩展增加功能。这样产生的新的类叫派生类。 继承体现了面向对象程序设计的层次结构,体现了由简单到复杂的认知过程。格式 class DerivedClassName : access_label BaseClassName 派生类名字 : 继承权限 父类名字继承关...原创 2018-08-28 10:09:20 · 11295 阅读 · 0 评论 -
实现一个通讯录
实现一个通讯录;通讯录可以用来存储1000个人的信息,每个人的信息包括: 姓名、性别、年龄、电话、住址 提供方法: 1. 添加联系人信息 2. 删除指定联系人信息 3. 查找指定联系人信息 4. 修改指定联系人信息 5. 显示所有联系人信息 6. 清空所有联系人 7. 以名字排序所有联系人实现起来并不是很难,但是一定要养成良好的代码习惯。Contac...原创 2018-05-11 14:54:51 · 256 阅读 · 0 评论 -
指针数组与数组指针详解
指针数组与数组指针详解1.什么是指针数组和数组指针?指针数组:指针数组可以说成是”指针的数组”,首先这个变量是一个数组,其次,”指针”修饰这个数组,意思是说这个数组的所有元素都是指针类型,在32位系统中,指针占四个字节。 数组指针:数组指针可以说成是”数组的指针”,首先这个变量是一个指针,其次,”数组”修饰这个指针,意思是说这个指针存放着一个数组的首地址,或者说这个指针指向一个数组的首地...转载 2018-04-26 14:10:59 · 95 阅读 · 0 评论 -
调整数组使奇数全部都位于偶数前面
代码段:#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>#include <stdlib.h>void swap(int arr[], int sz){ int i = 0; int a[5] = { 0 }; int b[5] = { 0 }; for (i = 0;...原创 2018-04-12 14:34:07 · 90 阅读 · 0 评论 -
求两个数的最大公约数
主函数(main):#include <stdio.h>#include <stdlib.h>int main(){ int a = 15; int b = 20; int n = 0; if (a > b) { n = b; } else n = a; i...原创 2018-04-09 09:21:33 · 94 阅读 · 0 评论 -
计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值。
主函数(main):#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>#include <math.h>#include <stdlib.h>int main(){ double i = 1; double num = 0; for (; i < 100; i+...原创 2018-04-09 09:30:25 · 1259 阅读 · 0 评论 -
编写一个程序,它从标准输入读取C源代码,并验证所有的花括号都正确的成对出现
主函数(main):#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>#include <stdlib.h>int main(){ int ch; int count = 0; //定义的计数器 while ((ch = getchar()) != EOF) //EOF ...原创 2018-04-09 09:34:20 · 122 阅读 · 0 评论 -
猜数字游戏
主函数(main):#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>#include <stdlib.h>#include <time.h>void menu() //菜单函数{ printf("************************\n"); print...原创 2018-04-09 09:38:51 · 198 阅读 · 0 评论 -
折半查找
代码块:#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>#include <stdlib.h>int binary_search(int arr[], int key, int sz) //查找函数{ int left = 0; int right = sz - 1; whi...原创 2018-04-09 09:43:17 · 112 阅读 · 0 评论 -
获取一个数二进制序列中所有的偶数位和奇数位,分别输出二进制序列
代码段:#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>#include <stdlib.h>int main(){ int a = 0; int count = 0; int i = 0; int arr1[16] = { 0 }; int arr2[16] ...原创 2018-04-09 09:47:19 · 85 阅读 · 0 评论 -
在屏幕上打印杨辉三角
代码段:#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>#include <stdlib.h>int main(){ int i = 0; int j = 0; int arr[20][20] = { 0 }; int a = 0; printf("请输入一...原创 2018-04-09 09:50:45 · 110 阅读 · 0 评论 -
用宏将一个数字的奇数位和偶数位交换
代码段:#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>#include <stdlib.h>#define swap(x) (((x&(0x55555555))<<1)|((x&(0xaaaaaaa))>>1))int main(){ int a =...原创 2018-04-09 10:45:27 · 130 阅读 · 0 评论 -
C++中类的封装
类类是对现实生活中一类具有共同特征的事物的抽象 类是面向对象程序设计实现信息封装的基础。 类是一种用户定义类型,也称类类型。 类的实例称为对象。 类的实质是一种数据类型面向对象原则以对象为中心,以谁做什么来表达程序的逻辑,对象的所以行为都通过调用函数来实现封装private : 只读属性,不可被外界修改 protect :来声明是希望与派生类分享但是不想被其他公共...原创 2018-08-28 10:19:38 · 260 阅读 · 0 评论