
C语言学习
文章平均质量分 61
C语言学习2020.4.7建立
胖虎问号
在我所追求的自由里,我从来没有自由过一次。
展开
-
找单身狗题目:一个数组中只有两个数字是出现一次,其他所有数字都出现了两次。 编写一个函数找出这两个只出现一次的数字。
试想5的二进制为0101,6的二进制为0110,这两个不同的数字进行异或结果为0011。比如5和6的最后一位二进制位不同,那么我们就将最后一位二进制位为0的划分到A组,最后一位二进制位1的划分到B组。首先我们简化一下问题,试想:假如这个数组中只有一个单身狗,比如说1 2 3 4 5 1 2 3 4。事实上,我们可以把这9个数全部进行异或:1^ 1 ^ 2^ 2 ^3 ^3 ^4 ^4 ^5=5。其中1 2 3 4均出现了两次,而5 和 6 只出现了一次,那么怎么把5和6找出来呢?组A:1 1 2 2 5。原创 2022-10-15 11:41:45 · 215 阅读 · 0 评论 -
【C语言】动态内存管理。alloca、calloc、malloc、free、realloc是什么?动态内存开辟的常见使用错误
本篇文章旨在简单介绍动态内存管理的四个主要的函数,其次我们会通过一些代码演示一些使用时的常见错误,帮助读者加深动态内存管理的这四个函数。本篇文章我们介绍了alloca、calloc、malloc、free、realloc这四个函数的基本用法,以及在使用这些函数时,我们可能遇到的常见错误。如果本文有错误,欢迎各位大佬指正(玻璃心,轻喷)最后祝大家学习进步,功不唐捐!原创 2022-09-25 14:26:36 · 737 阅读 · 0 评论 -
结构体的内存对齐
在学习结构体的时候,肯定有很多小伙伴会被计算结构体的内存题目难到。很多人也许会向我一样刷刷刷把成员的内存加起来,结果大错特错。原创 2022-09-18 20:32:23 · 608 阅读 · 0 评论 -
【C语言】用冒泡排序的思想模拟实现qsort()函数
用冒泡排序的思想模拟实现qsort()函数提示:以下是本篇文章正文内容,下面案例可供参考完整的代码如下所示(以测试整型数组为例)。i < sz;p2 ++;i ++) {j ++) {//交换 Swap((char *) base + width * j ,(char *) base + width *(j + 1) , width);return 0;}...原创 2022-08-13 16:26:02 · 410 阅读 · 0 评论 -
【C语言】一维数组传参和二维数组传参的总结
本文介绍一维数组和二维数组作为实参,形参的接受方式。以上就是一维数组传参和二维数组传参的一些方法。原创 2022-08-12 12:44:00 · 4525 阅读 · 3 评论 -
【C语言初学】打印整型数组的方法
本文是作为C语言初学者,将之间学到的几种打印整形数组的方法整理到这篇文章中。提示:以下是本篇文章正文内容,下面案例可供参考。原创 2022-08-12 11:56:11 · 12685 阅读 · 1 评论 -
【C语言:用一维数组模拟转化为二维数组】
在C语言学习中,假如有几个长度大小一样的一维数组要一起维护形成一个二维数组,怎么办呢?其实可以通过指针的方式将二维数组的首地址“串联”在一起。小小的程序浅浅记录一下,这里用到了指针数组的概念。指针数组,就是说首先是一个数组,而数组的元素是指针,也就是说,如果数组元素都是相同类型的指针,则称这个数组为指针数组。...原创 2022-08-03 15:17:58 · 1134 阅读 · 0 评论 -
【C语言:统计二进制中1的个数】
C语言统计二进制中1的个数】以上就是C语言统计二进制位的个数。前两种方法都使用了移位操作的方法,第三种方法使用了模除法,第四种方法用到了位操作符中的&。供读者参考。原创 2022-08-01 18:47:15 · 229 阅读 · 0 评论 -
字符串逆序实现:将参数字符串中的字符反向排列,不是逆序打印 OR 递归实现 编写一个函数 reverse_string(char * string)
编写一个函数reverse_string(char*string)(递归实现)实现将参数字符串中的字符反向排列,不是逆序打印。要求不能使用C函数库中的字符串操作函数。逆序之后数组的内容变成fedcba递归的主要思考方式在于把大事化小。在思考问题前应往这个方向去靠。在程序设计时应牢牢抓住以下的两个点。递归的两个条件(a)存在限制条件,当满⾜这个限制条件的时候,递归便不再继续。(b)每次递归调⽤之后越来越接近这个限制条件。...原创 2022-07-29 17:46:27 · 465 阅读 · 1 评论 -
【C语言】C语言常见整数类型的大小/取值范围/整数溢出
【C语言】C语言常见整数类型的大小/取值范围/整数溢出原创 2022-06-10 19:23:05 · 2549 阅读 · 1 评论 -
【C语言】如果要在八进制和十六进制前显示0和0x的前缀
在C程序中,既可以使用也可以显示不同进制的数。不同进制要使用不同的转换说明。以十进制显示数字用%d;以八进制显示数字用%o;以十六进制显示数字用%x。**注意:如果要在八进制和十六进制前显示0和0x前缀,要分别在转换说明中加入#**...原创 2022-06-09 21:04:58 · 2538 阅读 · 0 评论 -
C语言#include<stdio.h>什么意思?
深入浅出了解C语言include原创 2022-06-04 17:01:17 · 18487 阅读 · 1 评论 -
strlen()的返回值类型/格式字符串“%d”需要类型“int”的参数,但可变参数 1 拥有了类型“size_t”
strlen()的返回值类型/格式字符串“%d”需要类型“int”的参数,但可变参数 1 拥有了类型“size_t”原创 2022-06-03 11:25:28 · 4565 阅读 · 1 评论 -
【虾仁猪心!!】--1
一.虾仁猪心 发现一道题目,小小的题目蕴藏了我太多不知道的点。(还是因为我太菜了)#include <stdio.h>int i;int main(){ i--; if (i > sizeof(i)) { printf(">\n"); } else { printf("<\n"); } return 0; }二.强调的重点 1.全局...原创 2021-05-13 16:56:17 · 169 阅读 · 0 评论 -
【不愧是我01】C语言实现扫雷游戏!!(基础版)
一.扫雷游戏介绍 扫雷游戏可谓是我的童年。当上电脑课没有网络的时候,百无聊赖之际都会打开扫雷小游戏随便乱点,但是那个时候并不知道扫雷小游戏怎么玩的。我也是最近才知道游戏规则(汗颜)。但是这不影响我用我拙劣的C语言能力写出一个拙劣的扫雷小游戏!哈哈不愧是我。二.扫雷主函数游戏模块 首先主函数的功能就是为了实现主逻辑。当你选择1时候,玩游戏,选择0时退出游戏。游戏的逻辑封装在game()函数中。void menu(){ printf("************...原创 2021-04-28 16:41:55 · 114 阅读 · 0 评论 -
冒泡排序(白痴向)--C语言
1.什么是冒泡排序 博主是个白痴,本篇博文以白痴的视角去看看什么是冒泡排序。冒泡排序说的是计算机语言中排序的一种算法。那么什么是排序呢?就是说我们现在有一组无序的数,现在我们想让他变成有序的,也许是从小到大排序,也许是从大到小排序。因为这种算法就好像可口可乐气泡最终会上浮到顶端一样,故名“冒泡排序”。2.冒泡排序的图例 假设我们现在有一个数组,数组里面放着9,8,7,6,5,4,3,2,1,0这10个数,然后我们想把它排成升序!怎么搞呢! ...原创 2021-04-24 15:52:23 · 200 阅读 · 0 评论