
C语言程序设计
文章平均质量分 70
C语言程序设计
Hey小孩
键盘敲烂,月薪过万
展开
-
C语言程序设计——程序环境和预处理
_FILE__ // 进行编译的源文件__LINE__ // 文件当前的行号__DATE__ // 文件编译的日期__TIME__ // 文件被编译的时间__STDC__ // 若编译遵循ANSI C,值为1;否则未定义(1)语法(2)示例(1)定义#define机制包括了一个规定:允许把参数替换到文本中,这种实现通常称为宏或定义宏。parament-list是一个由逗号隔开的符号表,它们可能出现在stuff中(2)示例(3)注意。原创 2023-07-28 17:41:41 · 390 阅读 · 0 评论 -
C语言程序设计——文件操作
每个被使用的文件,都会在内存中开辟一个相应的,用来存储文件的相关信息(文件名、文件状态、文件位置……)。这些,该结构体类似是由系统声明,取别名为(1)不同的编译器的FILE类型所包含的内容不完全相同,但都大同小异;(2)每当打开一个文件时,系统会根据文件的情况自动创建一个FILE结构体变量,并填充内部的信息,不需要使用者手动操作。原创 2023-07-25 11:51:13 · 358 阅读 · 0 评论 -
C语言程序设计——柔性数组
C99中,结构体中的最后一个元素允许是未知大小的数组,这就叫“柔性数组”成员。原创 2023-07-20 10:18:14 · 284 阅读 · 0 评论 -
C语言程序设计——动态内存管理
这个函数用于向内存申请一块,并返回指向这块空间的指针:(1)如果开辟成功,则返回一个指向开辟好空间的指针;(2)如果开辟失败,则返回NULL指针;(3)返回值类型是void*:malloc并不知道开辟空间的类型,具体在使用的时候由使用者自己来决定;(4)如果size参数为0,这种行为标志未定义,取决于编译器。原创 2023-07-18 21:59:47 · 280 阅读 · 0 评论 -
C语言程序设计——结构体、枚举、联合
int val;}n1, n2;//声明类型的同时定义变量n1,n2//定义变量同时赋初始值enum day {mon, // 0tues, // 1wed, // 2thur, // 3fri, // 4sat, // 5sun // 6{}中的内容是枚举类型的可能取值,也叫枚举常量。取值默认从0开始,依次递增1,如果在定义的时候赋予了初始值,则后续在此基础上依次加一。原创 2023-07-18 17:08:14 · 168 阅读 · 0 评论 -
C语言程序设计——字符、字符串、内存函数
(1)字符串以'\0'作为结束标志,strlen函数返回的是在字符串中'\0'之前出现的字符个数(不包含'\0')。(2)参数指向的字符串,必须要以'\0'结尾。(3)strlen函数返回值类型是size_t,是无符号整型。原创 2023-07-17 21:22:33 · 254 阅读 · 0 评论 -
C语言程序设计——指针
/数组指针,指向的是一个数组//p1指向的数组有10个元素,每个元素都是int型……原创 2023-07-13 21:19:04 · 479 阅读 · 0 评论 -
C语言程序设计——数据在内存中的存储
数组类型结构体类型 struct枚举类型 enum联合类型 union。原创 2023-07-09 19:52:40 · 404 阅读 · 0 评论 -
C/C++程序设计——static关键字
C/C++中static关键字的使用介绍原创 2023-04-14 12:42:35 · 450 阅读 · 0 评论 -
C/C++程序设计——const关键字
const关键字详细介绍原创 2023-04-10 21:58:05 · 593 阅读 · 0 评论 -
C语言程序设计——volatile关键字、函数重入
知识扩充:volatile关键字,函数的可重入与不可重入原创 2022-10-05 19:14:14 · 1068 阅读 · 0 评论 -
C语言程序设计——扫雷游戏
扫雷游戏是以前Windows自带的一款经典益智游戏,游戏玩法简单,不懂的朋友可以去百度然后尝试一下就知道了,现在我们就用C语言来实现一下这款游戏。首先我们理清整体的思路,可以采用两个二维数组来作为游戏棋盘,一个用来埋雷(只有玩家通过游戏后显示一次),一个作为游戏棋盘,这里可以将埋雷棋盘初始化为全字符0,用字符1表示地雷,将游戏棋盘初始化为全'*'。(注:在确定数组大小时,我们可以在所需棋盘大小的基础上再在周围增加一圈棋盘,即行列都加2,这样便于后续统计扫雷位置周围地雷个数)。除此之外,我们好需要通过原创 2021-12-29 20:38:19 · 2206 阅读 · 0 评论 -
C语言程序设计——三子棋游戏
三子棋游戏有叫井字棋游戏,是很多人小时候都玩过的一种小游戏,游戏的玩法是两名玩家在三行三列的九个格子子里依次下棋,若一方的棋子有三个在行、竖,列三种中的任何一种连成一条线就获得游戏胜利。接下来就让我们看看如何用c语言来实现这个简单的小游戏吧!首先就是需要设计一个简单的菜单来供玩家选择,这个利用printf函数就可以简单的实现了:void Show() {//打印选择界面 printf("--------------------------------\n"); printf("--------原创 2021-12-06 16:17:56 · 3491 阅读 · 0 评论 -
C语言程序设计——冒泡排序
冒泡排序的思想就是通过相邻两个数据之间进行比较,将较大的数或者较小的数往后交换,每一轮冒泡选出最小或者最大的数交换到最后面并且不参与下一轮冒泡,这样通过不断的循环n-1(数据个数为n)轮冒泡,就完成了数据的有序排列。首先我们假设有这样一个数组,里面存放着一些无序的数据:int arr[] = { 2,5,6,45,8,65,42,20,9,54 };首先通过sizeof求出数组长度除以一个数据单元所占长度,得到数组大小,如下:int num = 0; num = sizeof(arr)原创 2021-11-26 13:12:34 · 5122 阅读 · 0 评论 -
C语言程序设计——猜数字游戏
游戏玩法:每次随机生成一个1~100之间的数字,玩家通过输入数字来猜这个数,如果没猜中则提示玩家猜大了或者猜小了,直到玩家猜中数字结束游戏。游戏玩法非常简单,那么怎么实现呢?首先对内容进行分析,我们首先需要生成一个随机数,可以考虑通过rand函数来实现:num = rand() % 100 + 1但是当我们写完代码调试试玩会发现每次的随机数都是相同的,并不能达到游戏效果,所以我们要在之前加入如下代码:srand((int)time(NULL));//随机数发生器初始化这样,每次我原创 2021-11-24 20:17:00 · 16187 阅读 · 0 评论 -
C语言程序设计——二分查找
对于一个有序的数据序列,我们在查找其中的某一个数时,除了通过遍历的方式查找外,还可以利用二分查找来有效提高我们的查找效率。那么二分查找的原理是什么?这么实现呢?跟着我继续往下看吧!众所周知,查找是通过将拿到的数据与自己想要查找数据进行对比的一个过程,如果相同则查找成功,反之则“淘汰”当前数据,继续查找。所以查找也可以看作是一个淘汰非查找目标数据的过程,所以每次查找能够淘汰的数据的多少也就一定程度上反映了查找方法的优越性,普通的遍历每次能够淘汰一个数据,而二分查找每次就可以淘汰一半的数据,效率可以说是相当原创 2021-11-22 21:30:34 · 1230 阅读 · 0 评论