- 博客(63)
- 收藏
- 关注
原创 DeepSeek 本地部署及 Cherry Studio AI 桌面客户端下载指南
Cherry Studio AI 桌面客户端是一款专为提升人工智能应用体验而精心设计的软件。在数据安全保障方面,它运用了一系列加密和权限管理技术,有力确保用户在使用 Ollama 等模型时的数据安全。同时,该客户端凭借简洁易用的界面和丰富多样的功能,能够极大地提升用户的使用体验。
2025-02-23 10:13:13
1567
原创 (7)指针和数组
函数除了分配内存外,还会将内存初始化为0。函数可以用于重新调整已分配内存的大小。个整数所需的内存空间,使用完后需要用。函数释放内存,以避免内存泄漏。
2024-11-01 10:00:00
466
原创 (1)程序设计与数据结构连续剧
(1)理解C或C++程序的基本构成,变量的定义与变量名的基本规则;(2)掌握C或C++的基本数据类型;宏常量与宏替换、const常量的定义、常用的标准数学函数等;(3)掌握C或C++运算符和表达式,算术表达式、赋值表达式与逗号表达式等;(4)数据的输入与输出。
2024-10-28 16:47:22
528
原创 程序设计解题思路
在这个例子中,我们首先通过`strlen()`函数获取字符串的长度,然后使用循环依次比较字符串的第i个字符和倒数第i个字符是否相等,如果有不相等的字符,则说明不是回文字符串,返回0;通过以上的通用解题思路和流程,可以较为全面地应对常见的C程序设计代码题,并且可以根据题目的不同要求进行相应的调整和改进。- 使用条件语句(如`if`、`else if`、`switch`)判断不同的情况并执行不同的操作。- 使用合适的字符串函数(如`strlen`、`strcpy`、`strcat`)进行操作。
2023-12-17 21:17:05
548
原创 ✰✰✰数据结构代码题必会解题思路及举例
删除节点:分为三种情况处理:删除叶子节点、删除只有一个子节点的节点、删除有两个子节点的节点。- 插入节点:创建新节点并将其指针指向前一个节点,将前一个节点的指针指向新节点,将新节点的指针指向下一个节点即可。- 合并链表:使用两个指针分别指向两个链表的头节点,比较节点值大小,将较小的节点连接到新链表中,移动指针继续比较。- 删除节点:找到要删除的节点的前一个节点,将其指针指向要删除节点的下一个节点,然后释放要删除的节点。- 插入节点:找到节点要插入的位置,创建新节点并将其挂载到对应位置的子节点上。
2023-12-17 21:06:23
997
原创 C语言实现在顺序表中找到最大值
然后在主函数中,首先输入顺序表的大小,然后输入顺序表的元素,最后通过调用`findMax`函数找到最大值并输出。// 调用findMax函数找到最大值。if (arr[i] > max) { // 如果当前元素大于最大值。// 输入顺序表的元素。// 输入顺序表的大小。printf("最大值为:%d\n", maxValue);printf("请输入顺序表的大小:");printf("请输入顺序表的元素:");
2023-12-13 16:08:15
1456
原创 C语言中常用的库函数和头文件
isalpha、isdigit:判断字符是否是字母、数字。- isupper、islower:判断字符是否是大写、小写。- strchr、strrchr:在字符串中查找特定字符。- fprintf、fscanf:格式化读写文件。- strcpy、strncpy:复制字符串。- strcat、strncat:连接字符串。- strcmp、strncmp:比较字符串。- floor、ceil:向下取整、向上取整。- fopen、fclose:打开关闭文件。- fgets、fputs:读写字符串。
2023-12-11 20:07:13
1454
原创 结构体例题—打印平均成绩,以及最高分
题目:有10个学生,每个学生的数据包括学号、姓名、3门课的成绩,从键盘输入 10个学生数据,要求打印出3门课总平均成绩,以及最高分的学生的数据(包括 学号、姓名、3门课的成绩、平均分数), 要求用 input函数输入10个学生数据;用max函 数找出最高分的学生数据;总平均分和最高分学生的数据都在主函数中输出。printf("3门课的总平均成绩为:%.2f\n", avg);printf("请输入学生的学号、姓名和3门课的成绩:\n");printf("平均成绩最高的学生的数据为:\n");
2023-12-10 14:23:21
858
原创 C程序设计—输入一行字符,分别统计出其中的英文字母、空格、数字和其它字符的个数。
else if (isspace(str[i])) // 如果是空格。else if (isdigit(str[i])) // 如果是数字。if (isalpha(str[i])) // 如果是字母。printf("其他字符个数:%d\n", others);// 其他字符个数加1。printf("空格个数:%d\n", space);printf("数字个数:%d\n", digit);
2023-12-08 12:29:03
1146
原创 定义一个学生类,其中有3个私有数据成员学号、姓名、成绩,以及若于成员。 函数实现对学生数据的赋值和输出。
printf("学号:%d, 姓名:%s, 成绩:%.2f\n", student->stuNum, student->name, student->score);initializeStudent(&stu1, 123456, "张三", 95.5);// 姓名,假设最长为20个字符。int stuNum;// 创建一个学生对象。// 初始化学生信息。// 初始化学生信息。
2023-12-07 09:09:03
1616
原创 if与switch语句的运用—输出成绩
printf("成绩等级为A\n");// 输出成绩等级A。printf("成绩等级为B\n");// 输出成绩等级B。printf("成绩等级为C\n");// 输出成绩等级C。printf("成绩等级为D\n");// 输出成绩等级D。printf("成绩等级为E\n");printf("成绩等级为A\n");printf("成绩等级为B\n");printf("成绩等级为C\n");printf("成绩等级为D\n");// 输出成绩等级D。printf("成绩等级为E\n");
2023-12-06 11:41:19
1032
原创 输出完全二叉树中某个结点的双亲和所有子孙。假设完全二叉树的顺序存储在一维数组A[n]中。
首先定义两个函数,`getParent`函数用于获取指定结点的双亲结点的索引,`printDescendants`函数用于输出指定结点的所有子孙。printf("结点%d的右子节点为:%d\n", index, A[rightChild]);printf("结点%d的左子节点为:%d\n", index, A[leftChild]);printf("结点%d的双亲结点为:%d\n", index, A[parentIndex]);// 需要输出双亲和所有子孙的结点索引,这里以索引为2的结点为例。
2023-12-05 10:24:37
693
原创 文件score.text,结构体中包括学生名字学生成绩,把成绩按从高到低排序显示输出个数:名字 分数
/ 显示排序后的学生成绩。// 对学生成绩进行排序。文件score.text,结构体中包括学生名字学生成绩,把成绩按从高。// 排序学生成绩,按照从高到低的顺序。{"张三", 85},{"李四", 77},{"王五", 92},{"赵六", 68},{"孙七", 79}到低排序显示输出个数:名字 分数。// 假设有5个学生。// 交换两个学生的位置。// 定义学生结构体。
2023-12-04 14:07:47
767
原创 实现将线性表分割为三个循环链表,每个循环链表表示的线性表中只含一类字符。
然后在`main`函数中,我们创建了表示线性链表和三个循环链表的指针,并调用`splitList`函数将线性表分割为三个循环链表。// 根据数据类型插入到对应的循环链表中。// 调用分割函数,将线性表分割为三个循环链表。// 将一个节点插入到循环链表的尾部。// 分割线性表为三个循环链表。// 定义线性链表节点结构。// 初始化一个循环链表。
2023-12-03 07:42:27
737
原创 判断一个字符序列是否为回文————利用使用双指针法
/ 假设输入的字符序列长度不超过1000。// 如果全部字符都比较完毕,没有返回0,则说明是回文,返回1表示是回文。// 如果左右指针所指字符不相等,则返回0表示不是回文。printf("请输入一个字符序列以@为结束符:");// 移动左右指针继续判断下一对字符。printf("不是回文\n");printf("是回文\n");// 读入字符序列直到遇到'@'为止。// 循环判断左右指针字符是否相等。// 判断输入的字符序列是否为回文。
2023-12-02 16:09:07
1056
原创 C语言实现输入5个学生的4门课成绩,并计算每个学生的平均分并按照平均分从高到低排序。
上述代码定义了两个函数:`calculateAverage()`用于计算每个学生的平均分,`sortAverages()`用于将平均分从高到低排序。在`main()`函数中,我们首先定义了需要输入的学生数量和成绩数组,然后通过循环依次输入每个学生的4门课成绩。接着调用`calculateAverage()`函数计算每个学生的平均分,并将结果存储在一个平均分数组中。最后,我们调用`sortAverages()`函数对平均分数组进行排序,并输出排序后的结果。// 计算每个学生的平均分。
2023-12-01 09:06:55
1920
原创 快速排序算法的代码及算法思想
通过一趟排序将待排序的数据分割成独立的两部分,其中一部分的所有数据都比另一部分的所有数据小,然后再对这两部分数据分别进行快速排序,递归地重复此过程,直到整个序列有序。// 遍历数组,并将小于基准元素的值放到较小元素区域。// 对基准元素左侧的子数组进行快速排序。// 对基准元素右侧的子数组进行快速排序。// 分割函数,选取基准元素并调整元素位置。// 选取最右侧元素作为基准元素。// 定义较小元素所在位置的索引。// 将基准元素放到合适的位置。// 基准元素的索引。// 返回基准元素的索引。
2023-11-30 14:41:48
1623
原创 基本的 B 树和 B+ 树操作的代码
/ 当前节点存储的键的数量。// 当前节点存储的键的数量。// 是否为叶子节点。// 如果拆分的叶子节点为根节点,需要创建新的根节点。// 节点为叶子节点,直接将键插入合适位置。// 节点为内部节点,递归向下插入合适位置。// 在父节点中插入拆分出的键和子节点指针。// 寻找拆分节点在父节点中的位置。
2023-11-29 07:53:57
682
原创 如何使用邻接矩阵和邻接表来表示无向图和有向图
/ 由于是无向图,所以需要对称地设置另一条边。// 初始化所有边为0。// 初始化邻接表为空。// 下一个连接的边。// 添加无向图的边。// 添加有向图的边。
2023-11-28 14:14:40
755
原创 六道经典的C语言选择结构题型
printf("%d的阶乘为%llu\n", num, factorial);printf("%d不是回文数\n", originalNum);printf("%d是回文数\n", originalNum);printf("最大值为:%d\n", num1);printf("最大值为:%d\n", num2);printf("%d不是质数\n", num);printf("%d是偶数\n", num);printf("%d是奇数\n", num);printf("%d是质数\n", num);
2023-11-27 13:56:57
1452
原创 文件的写入和读取操作
在`writeToFile()`函数中,程序创建一个新的文件(如果文件不存在),并将用户输入的数据写入文件中。在`readFromFile()`函数中,程序打开已存在的文件,并将文件中的内容逐行显示在屏幕上。printf("无效的选择\n");printf("请输入要写入文件的内容:\n");printf("文件打开失败\n");printf("文件打开失败\n");printf("1. 写入文件\n");printf("2. 读取文件\n");printf("请选择操作:\n");
2023-11-26 18:13:32
733
原创 文件的基本操作,打开、写入、读取和关闭文件。
printf("文件内容:%s", content);printf("原始文件打开失败\n");printf("复制文件打开失败\n");printf("文件打开失败\n");printf("文件打开失败\n");printf("文件复制成功\n");
2023-11-25 19:36:24
960
原创 用最简单的c语言代码实现猴子吃桃问题
根据题目描述,我们从第九天的桃子数量开始,逆推求解第一天共摘了多少个桃子。每天的剩余桃子数量等于前一天的剩余桃子数量加1后乘以2。在这个例子里,输出结果将会显示第一天共摘了多少个桃子。// 每天剩余桃子数量等于前一天剩余桃子数量加1后乘2。printf("第一天共摘了 %d 个桃子\n", day);// 第九天的桃子数量。
2023-11-24 07:46:25
638
原创 整理学习几种数据结构内部排序算法的代码(C语言)
上述代码实现了希尔排序算法,通过不断缩小增量来对数组进行排序。此处使用了Knuth(洗牌算法)序列来计算增量值,并且在每个增量下都使用插入排序来对子数组进行排序。输出结果为原始数组和排序后的数组。printf("\n排序后的数组:");// 对每个间隔进行插入排序。// 使用Knuth序列计算增量值。printf("原始数组:");
2023-11-23 16:10:34
347
原创 使用C语言编写的程序,实现输入10个学生的数据,计算3门课的总平均分,并找出最高分的学生数据。
printf(“成绩:%.2f %.2f %.2f\n”, maxStudent.score1, maxStudent.score2, maxStudent.score3);printf(“平均分数:%.2f\n”, (maxStudent.score1 + maxStudent.score2 + maxStudent.score3) / 3);printf(“请输入第%d个学生的3门课的成绩:”, i + 1);printf(“请输入第%d个学生的姓名:”, i + 1);// 找出最高分的学生数据。
2023-11-22 14:55:09
1273
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人