C语言
文章平均质量分 53
基础不扎实的计算机小白
CV工程师
展开
-
停车场管理系统(C语言顺序栈+链栈+链队列)
停车场管理系统(C语言---车库顺序栈+临时链栈+排队车道链队列)原创 2022-04-20 01:53:00 · 13318 阅读 · 8 评论 -
字符串处理系统的设计与实现(C语言)
一、实验目的1.理解模块化设计思想,熟悉流程图的使用;2.掌握字符串的基础操作:字符串显示输出; 查找指定字符; 插入字符; 删除指定字符; 替换字符; 串拼接 求子串 模式匹配BF算法。二、实验内容1.分析系统功能,根据功能模块图选择2个模块画出流程图;2.设计系统主界面,要求选择菜单对应数字进入相应功能:3.定义一个字符串数组,使其具有如下功能:(1) 读取文档,输出字符串;(2) 查找某个字符在字符串中出现的字数以及位置;(3) 在字符串的指定位置插原创 2022-04-06 15:30:10 · 4812 阅读 · 11 评论 -
基于单链表的图书管理系统(C语言)
GCC校友交作业记得改一下我还没交!!!🤗🤗🤗Visual Studio编译环境功能:0、退出。 1、基于顺序存储结构的图书信息表的创建和输出。 2、基于顺序存储结构的图书信息表的新图书的入库。 3、基于顺序存储结构的图书信息表的旧图书的出库。 4、基于顺序存储结构的图书信息表按书号查找。 5、基于顺序存储结构的图书信息表按价格区间查找。 ...原创 2022-03-16 00:45:42 · 6649 阅读 · 13 评论 -
基于顺序表的图书管理系统(C语言)
Visual Studio编译环境功能:0、退出。 1、基于顺序存储结构的图书信息表的创建和输出。 2、基于顺序存储结构的图书信息表的新图书的入库。 3、基于顺序存储结构的图书信息表的旧图书的出库。 4、基于顺序存储结构的图书信息表按书号查找。 5、基于顺序存储结构的图书信息表按价格区间查找。 6、基于顺序存储结构的按图书价格升序排序...原创 2022-03-03 11:24:35 · 9505 阅读 · 15 评论 -
m着色问题(递归回溯)(C语言)
图m着色问题给定无向连通图G和m种不同的颜色。用这些颜色为图G的各顶点着色,每个顶点着一种颜色。是否有一种着色法使G中每条边的2个顶点着不同颜色。这个问题是图的m可着色判定问题。若一个图最少需要m种颜色才能使图中每条边连接的2个顶点着不同颜色,则称这个数m为该图的色数。求一个图的色数m的问题称为图的m可着色优化问题。问题:给出如下图1的无向连通图及色数m=3,要求画出解空间树,并给出所有解。这是m着色问题的空间图m着色问题和N皇后问题的解法是差不多的:n皇后算法(递归回溯).原创 2021-12-05 15:01:33 · 2604 阅读 · 0 评论 -
n皇后算法(递归回溯)(C语言)
N皇后问题在n×n格的棋盘上放置彼此不受攻击的n个皇后。按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。假设现在有4个皇后,要求放在4Í4的棋盘上,要求给出所有的摆放方式。原创 2021-12-05 01:57:46 · 2324 阅读 · 0 评论 -
数据结构:无向图邻接表、邻接矩阵创建及其BFS、DFS遍历(C语言)
实验目的:1.掌握图的定义和构造方法;2.掌握图的存储及遍历方法及应用。实验内容:编程实现:1、建立一个以邻接表形式存储的图;2、建立一个以邻接矩阵形式存储的图;3、以邻接表形式存储的图的深度优先遍历;4、以邻接表形式存储的图的广度优先遍历;5、以邻接矩阵形式存储的图的深度优先遍历;6、以邻接矩阵形式存储的图的广度优先遍历;学习邻接表时候画的图,如果没有动态视频教程的话,个人觉得看着代码一层一层画图很容易理解个人比较懒,下面是代码:(注释应该能看懂吧哈哈哈原创 2021-12-05 00:29:15 · 4264 阅读 · 1 评论 -
C语言:二叉链树的基本操作
实验目的:1.掌握二叉树的定义;2.掌握二叉树的基本操作,如二叉树的建立、遍历、结点个数统计、树的深度计算等。实验内容:用递归的方法实现以下算法:1.以二叉链表表示二叉树,建立一棵二叉树;2.输出二叉树的中序遍历结果;3.输出二叉树的前序遍历结果;4.输出二叉树的后序遍历结果;5.计算二叉树的深度;6.统计二叉树的结点个数;7.统计二叉树的叶结点个数;8.统计二叉树的度为1的结点个数;9.输出二叉树中从每个叶子结点到根结点的路径。选做内容1..原创 2021-11-19 15:06:00 · 3997 阅读 · 1 评论 -
C语言:哈夫曼树构造及编码(核心代码每一行都有注释)
一、【实验目的及要求】理解Huffman树的概念及其存储结构; 熟悉Huffman树的构造; 掌握Huffman树的编码方法。二、【实验内容】1、代码实现Huffman编码2、现有文本“HUFFMAN TREE AND HUFFMAN ENCODING EXAMPLES”,请统计每个字符出现的频率,绘制Huffman树的逻辑结构图(即结点-连线图)。3、根据结点-连线图,列出每个字符的Huffman编码。4、计算Huffman树的平均传输位数B。三、主要问题和解决方案原创 2021-11-12 14:01:17 · 3052 阅读 · 6 评论 -
C语言:顺序循环队列
代码:#include<stdio.h>#include<stdlib.h>#define MAXSIZE 5#define ERROR 0;#define OK 1;typedef struct { int* base; int front; int rear;}Queue;int Cs_Queue(Queue &Q) { Q.base = (int*)malloc(MAXSIZE*sizeof(int)); if (!Q.base) {原创 2021-11-09 14:28:56 · 635 阅读 · 2 评论 -
C语言:链式队列
#include<stdio.h>#include<stdlib.h>#define OK 1#define ERROR 0typedef struct Qnode { int data; struct Qnode* next;}Qnode,*Znode;typedef struct { Znode front; Znode rear;}Lqueue;int Cj_Queue(Lqueue& Q) { Q.front =Q.rear= (Znode.原创 2021-11-09 14:23:45 · 144 阅读 · 0 评论 -
C语言:01背包算法
一、实验目的1、熟悉C/C++语言的集成开发环境;1、通过动态规划算法的示例程序理解动态规划算法的基本思想2、运用动态规划算法解决实际问题加深对动态规划算法的理解和运用二、实验内容1、动态规划算法思想:把待求解问题分解成若干个子问题,先求解子问题,然后由这些子问题的解得到原问题的解,但动态规划求解过的子问题的结果会被保留下来,不像递归那样每个子问题的求解都要从头开始返回求解。动态规划求解问题的关键在于获得各个阶段子问题的递推关系式:(1)分析原问题的最优解性质,刻画其结构特征原创 2021-11-09 10:52:21 · 3806 阅读 · 0 评论 -
C语言:棋盘覆盖(代码注释+运行结果)
代码如下:#include<stdio.h>int board[100][100];int t;void cover(int left_i,int right_j,int dot_i,int dot_j,int size) { if (size == 1) {//判断是否k=0; return ; } //记录L贴纸 int tem = ++t; int s = size / 2;//棋盘分开;s为已分方形边长 if (dot_i < left_i + s &a原创 2021-11-02 23:28:49 · 1451 阅读 · 0 评论 -
C语言:栈的基本操作
#include<stdio.h>#include<stdlib.h>#define MAXSIZE 10#define ERROR 0#define OK 1typedef struct Sqtack { int stacksize; int *top; int *base;}Sqtack;int Xj_stack(Sqtack &S) {//申请内存 if (S.stacksize == MAXSIZE) { printf("请勿重复创建!\a.原创 2021-11-01 21:27:59 · 192 阅读 · 0 评论 -
C语言:删除有序链表大于mink小于maxk的数
将链表变成有序链表并定义mink和maxk,删除大于mink和小于maxk的数据,mink和maxk可不与链表数据相同。//代码#include<stdio.h>#include<stdlib.h>#include<string.h>#define MAXSIZE 10#define OK 1#define ERROR 0#define T 1#define F -1typedef int Status;typedef struct Dli原创 2021-10-30 14:18:20 · 2049 阅读 · 0 评论 -
C语言:找出单链表的最大值MAX(随机输入)
#include<stdio.h>#include<stdlib.h>#include<string.h> #define MAXSIZE 10#define OK 1#define ERROR 0#define T 1#define F -1 typedef int Status;struct Student { int id;}; typedef struct Dlist { Student data; struct Dlist* .原创 2021-10-29 09:26:37 · 2083 阅读 · 0 评论 -
C语言:顺序表删除item数据
已知长度为n的线性表A采用顺序存储结构,请写一个时间复杂度为O(n)、空间复杂度为O(1)的算法,该算法可删除线性表中所有值为item的数据元素。代码如下:#include<stdio.h>#include<stdlib.h>#define MAXSIZE 10#define OK 1#define ERROR 0#define Free -1typedef int Status;typedef int ElemType;struct Student原创 2021-10-28 13:39:59 · 291 阅读 · 1 评论 -
C语言:顺序表逆转
1、设计一个算法,将链表中所有结点的链接方向“原地”逆转,即要求仅利用原表的存储空间,换句话说,要求算法空间复杂度为O(1)。定义三个指针分别为:new,old,temp;new指向头结点L的下一个元素,old指向new的下一个元素,temp指向old下一个元素(防止old指向new后,temp指向的数据丢失),然后开始逆转:①(old的next从temp改成new,然后三个指针全部往后退一个元素 ),在继续循环重复①操作,当Temp==NULL,停止循环,然后再做一次①操作,之后头结点L的下一个元素,原创 2021-10-28 13:36:50 · 2881 阅读 · 1 评论 -
C语言:顺序表以及单链表
实验题目:线性表的基本操作实验环境:Visual Studio实验目的:1、掌握线性表的定义;2、掌握线性表的基本操作,如建立、查找、插入和删除等。实验内容:定义一个包含学生信息(学号,姓名,成绩)的顺序表和链表,使其具有如下功能:(1) 根据指定学生个数,逐个输入学生信息;(2) 逐个显示学生表中所有学生的相关信息;(3) 根据姓名进行查找,返回此学生的学号和成绩;(4) 根据指定的位置可返回...原创 2021-10-28 10:11:16 · 1132 阅读 · 0 评论 -
C语言:二分归并排序算法
一、【实验目的及要求】1.掌握分治策略的基本思想。2.学会运用分子策略的思想解决实际问题(如:二分归并排序)。3.掌握二分归并排序的思想以及运算步骤。二、【实验内容】有待排序数组如下: 9 5 2 7 12 4 3 1 11 要求使用二分排序的思想将其排好序,排好的顺序如下: 1原创 2021-10-26 16:53:17 · 1146 阅读 · 1 评论 -
C语言:循环日程表
一、【实验目的及要求】1.掌握分治策略的基本思想。2.学会运用分治策略的思想解决实际问题(如:循环赛日程表)。3.掌握使用分治策略思想解决实际问题。二、【实验内容】设计一个满足以下要求的比赛日程表:(1)每个选手必须与其他n-1个选手各赛一次;(2)每个选手一天只能赛一次;(3)循环赛一共进行n-1天。要求:对8个选手进行循环赛日程表的安排,并输出安排的方式截图,如下截图是当有2个和4个选手时,安排方式的输出。 编译思路来源于:分治算法,循环...原创 2021-10-26 16:50:59 · 1707 阅读 · 0 评论