自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 C语言 【大白话讲指针(中)】

在之前的文章中我们已经知道了指针的概念,指针就是一个变量,用来存放地址,地址指向唯一一块内存空间。指针的大小是固定的4/8个字节(32为机器/64位机器)。指针是有类型的,指针的类型决定了指针加减整数的步长,也指定了该指针在解引用操作时候的权限。

2024-11-08 21:18:43 373

原创 C语言 【通讯录项目】

联系人自定义排序就是可以按照用户的需求进行排序,例如按照名字首字母的顺序、年龄的大小等联系人拥有的信息进行排序。C 语言 【排序算法---qsort()】-CSDN博客//按年龄升序排序printf("已完成排序!\n");运行结果:到这里一个简易的通讯录就已经完成了,喜欢的读者请一键三连!

2024-11-07 22:22:10 674

原创 C 语言 【结构体】

结构体是一个自定义数据类型,这里可以做一个类比。让我们回顾一下什么是数组,数组是一种元素类型相同的集合,这个集合统称为数组。那么,结构体可以理解成一组元素类型不同的集合。再清晰地来说,结构是一些不同类型值的集合,这些值被称为成员变量(结构的每个成员变量可以是不同类型的值)。有了结构体类型,那如何定义变量,其实很简单。int x;int y;}p1;//声明类型的同时定义变量p1//定义结构体变量p2p1是在创建结构体类型时就创建的结构体变量,p2是在结构体创建之后创建的变量。

2024-11-07 21:02:26 745

原创 C语言【字符库函数模拟实现】

本文欲实现五个常用的库函数,旨在提升初学者对字符串的理解和使用。希望本文对读者有所帮助。

2024-11-04 21:45:05 454 1

原创 C 语言 【排序算法---qsort()】

在前面的文章中,我有总结简单的冒泡排序算法。在之前写到的冒泡排序算法的适用范围还是比较狭窄的,它只能适用于整型数据,让我们来简单回顾一下。假设待排序的数据有个,那么就需要趟冒泡,每趟排序需要进行次判断,如果前一个数大于第二个数就进行交换。代码运行结果:现在的代码只能对整型数组进行排序,我们可以对其进行改造。让其可以适用于其他类型的排序,比如浮点型、自定义类型(结构体等)。不过在这之前,我们需要学习库函数qsort()以实现对bubble_sort()的改进。

2024-10-30 17:20:16 520

原创 C语言 【句子倒叙】

在学期C语言前期,经常会遇到一个经典的题目:倒序字符串。这个题目利用指针可以很简单地得到解决。句子倒叙需要用到这个思想,在正式句子倒叙之前我们先来倒叙字符串。那么对于句子倒叙这个题目来说,假设输入:hello world!hello 句子中的单词位置发生倒叙,而单词本身不发生倒叙,这里进行输入输出测试:输入hello world!

2024-10-29 15:59:14 493

原创 C 语言 【大白话讲指针 (上)】

在计算机科学中,指针(Pointer)是编程语言中的一个对象,利用地址,它的值直接指向(points to)存在电脑存储器中另一个地方的值。由于指针可以找到内存单元的内容,我们可以把指针理解成内存单元的编号,类似于人的身份证号码,对于每一块内存单元来说,在一个指定的计算机上,该内存单元的指针(地址)是独一无二的。广义上的指针是地址,严格意义上来说,指针其实叫做指针变量。而指针变量中存放的内容就是地址。//在内存中开辟一块空间。

2024-10-29 15:29:56 945

原创 C 语言 【为什么程序死掉了??】

当i>9时,数组进行了越界访问,越界访问时数组有可能会访问到位于数组存储位置上方的变量i,这就很危险,因为i是循环控制变量。这个案例也在提醒我们在写代码的过程中要注意不能对数据进行越界访问,合理规范的访问数据,可以规避一些程序错误的风险。栈区的使用规则是根据程序的运行,自上而下为函数中的局部变量开辟空间。今天遇到一道有意思的题目,在最初看到的时候没有发现任何问题,可是在运行的时候程序莫名其妙的死循环打印。仔细想了想,原来是变量在定义的时的内存空间分布问题、栈区内存的使用问题结合在了一起。

2024-10-25 21:22:34 355

原创 C 语言 【删除序列中的指定元素】

首先现有一个数组arr[]={1,2,3,4,5,4,6,7,8},假设我要删掉数组中4这个元素。那么我可以将原始数组想象成皇帝的候选妃子,皇帝的癖好是不喜欢太瘦的人,这里假设4就是瘦子。现在就是太监(i)挨个检查候选的妃子,符合标准的让太监(j)放进arr[]。不符合的就淘汰!

2024-10-25 10:17:16 526

原创 C 语言 【倒序字符串】

这里要注意的是,输入的字符串中可能包含空格,常规的输入函数scanf("%s"),在输入中有空格时就会中断。所以常规的输入函数不能满足该题目的要求,这里有一个比较小众的输入模式的更改即:scanf("%[^\n]"),有了这样的设置,输出函数会在扑捉到回车(\0)之后才会停止。今天来讨论一道经典题目,使用函数倒序字符串的内容,要求:字符串中可能包含空格。C语言的标准库中有一个gets()函数,具体解释可以参考cplusplus网站给出的信息,输入:I am a student。

2024-10-24 09:47:34 468

原创 C 语言 【数组】

下面,正文开始!

2024-10-21 21:22:34 827

原创 C 语言 【操作符(下)】

说到这操作符下篇,各位看官老爷可得认真听听喽。主要就是说说这和,对于初学者来说可能学到的内容太过浅显,今天就让我呀来带您好好唠唠。先接着上篇的内容给大家聊聊吧。

2024-10-19 20:50:38 827

原创 C语言 【操作符(上)】

这几种操作符除了取余(%)操作符外,其他操作符均可以作用于整数和浮点数,取余操作符的两个操作数必须为整数。最开始提到C语言操作符,我还是有一些不屑的,这玩意有啥学的呀?也就是32个1,所以显然上述程序的输出结果是错误的。按照上面的思路,我们将整个整型的每一个比特位进行按位右移并且与数字1按位与,通过检测按位与的结果是否为1,来实现统计原数中1的个数。有人想到,我们可以类比取出十进制数字的方法进行求解,是的,我么可以来试一试。我们当然知道他的运算逻辑,当两个数中有0,结果就为0,两者都为1,结果就为1;

2024-10-18 18:02:59 448

原创 C语言练习题 【判断素数、闰年、求最大公约数和最小公倍数】

假设要判断的对象为num, 该解法为循环产生2 - (num-1)之间的数。若存在一个2 - (num-1)之间的数能被num整除,则num非素数。直到循环结束,所有的2 - (num-1)之间的数都不能被num整除,则num为素数。之间的数都不能被num整除,则num为素数。:一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做素数。:先使用循环产生100-200之间的所有数字,在进行每一个数字的判断。之间的数能被num整除,则num非素数。直到循环结束,所有的2 -

2024-10-10 22:12:29 225

原创 C语言【深度讲解函数递归】

函数递归是什么?即程序在运行过程中自己调用自己的过程。递归讲明了函数在运行过程中的两个主要动向:递(向下传递)、和归(回归)。递归策略往往可以把一个复杂且重复的问题简化为一个与原问题相似但规模量较小的问题来求解,只需要少量的程序就可以描述出复杂问题中的多次重复计算。

2024-10-10 20:28:57 274

空空如也

空空如也

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

TA关注的人

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