自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 收藏
  • 关注

原创 程序的编译和链接

1.程序的翻译环境 2.程序的执行环境 3.详解:C语言程序的编译+链接 4.预定义符号介绍 5.预处理指令 #define 6.宏和函数的对比 7.预处理操作符#和##的介绍 8.命令定义 9.预处理指令 #include 10.预处理指令 #undef 11.条件编译 程序的翻译环境和执行环境 在ANSI C的任何一种实现中,存在两个不同的环境。 第1种是翻译环境,在这个环境中源代码被转换为可执行的机器指令。 第2种是执行环境,它用于实际执行代 码。 翻

2021-11-15 17:52:47 813

原创 C语言文件操作

1. 为什么使用文件 2. 什么是文件 3. 文件的打开和关闭 4. 文件的顺序读写 5. 文本文件和二进制文件 6. 文件读取结束的判定 7. 文件缓冲区 1. 为什么使用文件 我们前面学习结构体时,写了通讯录的程序,当通讯录运行起来的时候,可以给通讯录中增加、删除数据,此时数据是存放在内存中,当程序退出的时候,通讯录中的数据自然就不存在了,等下次运行通讯录程序的时候,数据又得重新录入,如果使用这样的通讯录就很难受。 我们在想既然是通讯录就应该把信息记录下来,只有我们自己选择删

2021-11-14 18:52:02 154

原创 通讯录 (修改版)

改造之前的通讯录; 使得通讯录,可以动态的增长空间 修改结构(头文件修改) typedef struct Contact { PeoInfo* data; int sz;//有效元素的个数 int capacity;//容量 }Contact; 新增函数: void CheckCapacity(Contact* pcon) { if(pcon->sz == pcon->capacity) { //每次扩容双倍 PeoInfo* ptr = realloc.

2021-11-14 18:27:30 967

原创 自定义类型详解

结构体 结构体类型的声明 结构的自引用 结构体变量的定义和初始化 结构体内存对齐 结构体传参 结构体实现位段(位段的填充&可移植性) 枚举 枚举类型的定义 枚举的优点 枚举的使用 联合 联合类型的定义 联合的特点 联合大小的计算 结构的基础知识 结构是一些值的集合,这些值称为成员变量。结构的每个成员可以是不同类型的变量。 结构的声明 struct tag { member-list; }variable-list; 例如描述一个学生: struct .

2021-11-10 18:15:54 218

原创 通讯录的编写

实现一个通讯录; 通讯录可以用来存储1000个人的信息,每个人的信息包括:姓名、性别、年龄、电话、住址 提供方法: 添加联系人信息 删除指定联系人信息 查找指定联系人信息 修改指定联系人信息 显示所有联系人信息 清空所有联系人 以名字排序所有联系人 这样一个程序相对来说比较复杂,所以我们今天采用多文件进行编写 contact.h: #include <stdio.h> #include <string.h> #include <assert.h&gt

2021-11-10 17:59:33 991

原创 字符函数和字符串函数

重点字符 求字符串长度 strlen 长度不受限制的字符串函数 strcpy strcat strcmp 长度受限制的字符串函数介绍 strncpy strncat strncmp 字符串查找 strstr strtok 错误信息报告 strerror 前言 C语言中对字符和字符串的处理很是频繁,但是C语言本身是没有字符串类型的,字符串通常放在 常量字符串 中 或者 字符数组 中。 字符串常量 适用于那些对它不做修改的字符串函数 函数介绍 strlen size_t strlen (

2021-11-06 12:46:40 139

原创 数据在内存中的存储

目录​ 1. 整形在内存中的存储:原码、反码、补码 2. 大小端字节序介绍及判断 3. 浮点型在内存中的存储解析 1. 原码、反码、补码 计算机中的有符号数有三种表示方法,即原码、反码和补码。 三种表示方法均有符号位和数值位两部分,符号位都是用0表示“正”,用1表示“负”,而数值位 三种表示方法各不相同。 原码 直接将二进制按照正负数的形式翻译成二进制就可以。 反码 将原码的符号位不变,其他位依次按位取反就可以得到了。反码+1就得到补码。 正数的原、反、补码都相同。 对于整形来说

2021-10-11 19:46:36 98

原创 C语言操作符详解

1.位操作符 注意:对于位操作符,他们的操作数必须是整数。 1.按位“异或”运算(^) 按位“异或”运算符是双目运算符,其功能是将参与运算的两数的对应二进制位相“异或”。 运算规则:位置相同结果为0,相异为1。 运算特点:a:0异或任何数 == 任何数b: 1异或任何数 == 任何数取反 c: 任何数异或自己 == 把自己置0 支持交换律:10 ^ 20 ^ 10 == 10 ^ 10 ^ 20 == 0 ^ 20 == 20 应用举例: (1):实现两个值的交换,而不必 使用临时变量。这..

2021-06-09 14:52:46 139

原创 三子棋小游戏

目录 一.创建用户选择菜单 二.创建主函数 三.编写游戏函数 1.首先我们对常用的字符和变量进行定义,以便我们后期的维护和修改 2.编写游戏函数的大体过程 3.对棋盘的初始化的函数 4.展示棋盘的函数 5.判断游戏是否结束的函数 6.判断用户落子是否合法并落子的函数 7.电脑落子的函数 四.用多文件形式展示代码与运行成果 1.头文件 main.h 2.源文件 main.c 3.源文件 game.c ...

2021-05-30 16:15:24 246 3

原创 简单的扫雷游戏

目录 一.创建用户选择菜单 二.创建主函数 三.编写游戏函数 1.开始先对常用的字符和变量进行定义,以便我们后期的维护和修改 2.设计游戏思路 3.随机埋雷的函数 4.展示棋盘的函数 5.扫雷成功后展示周围雷个数 四.用多文件形式展示代码与运行成果 1.头文件 main.h 2.源文件 main.c 3.源文件 game.c 4.运行结果 一.创建用户选择菜单 static void Menu() { printf("########################\n"...

2021-05-30 16:03:10 154

原创 完成一个猜数字小游戏

完成一个猜数字小游戏 #define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<windows.h> #include <stdlib.h> #include <time.h> void menu() { printf("**********************************\n"); printf("*********** ...

2021-05-17 13:17:55 114

原创 计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值

计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值 #define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<windows.h> int main() { int i = 0; double sum = 0.0; int flag = 1; for (i = 1; i <= 100; i++) { if (1 ==...

2021-05-17 13:14:30 151

原创 给定两个数,求这两个数的最大公约数

给定两个数,求这两个数的最大公约数 int main() { int a=0 ; int b=0 ; int c=0 ; scanf("%d%d", &a, &b); while (c=a%b) { a = b; b = c; } printf("%d\n", b); return 0; } ...

2021-05-17 12:34:23 128

原创 计算1到100中所以数字总共有几个9

计算1到100中所以数字总共有几个9 因为是100以内的数,所以只判断个位和十位上是否有9就可以了 #include <stdio.h> int main() { int n=1; int count=0; /*count是数字9出现的个数*/ while(n<100) { if(n%10==9) count++; /*个位上含数字9的*/ if(n%100-n%10==90) count++;..

2021-05-15 14:46:22 394

原创 打印1000年到2000年之间的闰年

打印1000年到2000年之间的闰年

2021-05-15 14:43:11 104

原创 在一个有序数组中查找1个数字

在一个有序数组中查找1个数字 #include <stdio.h> #include<windows.h> int main() { int arr[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; int i = 9; int j = sizeof(arr) / sizeof(arr[0]); int star = 0; int end = j- 1; while (star <= end) { ...

2021-05-15 14:39:27 299

原创 把三个数从小到大排列起来

把三个数从小到大排列起来 #include <stdio.h> #include<Windows.h> #pragma warning(disable:4996) int main() { int a, b, c, d; scanf("%d%d%d", &a, &b, &c); if (a < b) { d = a; a = b; b = d; } ...

2021-05-12 10:24:40 157

原创 用函数比较两个数的大小

用函数比较两个数的大小 #include<stdio.h> #pragma warning(disable:4996) int Max(int a,int b) { int max = 0; if (a > b) max = a; else { max = b;; } return max; } int main() { int a = 0; int b = 0; int ma...

2021-05-08 12:49:53 1015

原创 2021-05-07

小时候的爱好是打游戏,因为打游戏才导致自己的近视,也是从那个时候开始就对电脑产生了浓厚的兴趣。 现在上了大学,压力也没高中那么大,每天的课程上完有着大量的空闲时间不知道该干什么,因为自己本身的专业接触到了编程,一下就对这件事情充满了兴趣,决定用自己的空闲时间学习这一方面的知识,目前决定每天两个小时的时间学习吧,以后泡图书馆的时间可能会达到一个新高了吧。 学习编程不仅仅是自己的兴趣使然,它也是为我以后的发展打下一个良好的基础,所以更要努力学习了。 可能是初生牛犊不怕虎吧,现在的我目标就是大众所熟知的一线

2021-05-07 11:41:26 84

原创 开始!!!

新开了博客,为了记录自己枯燥乏味的编程生涯,从现在开始,努力打卡,不要放弃!

2021-05-07 11:19:03 138

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除