- 博客(43)
- 收藏
- 关注
原创 7.30作业
使用 策略模式 + 简单工厂模式实现以下功能 有一个英雄类,拥有私有成员: hp ,atk,dep 英雄可以打怪掉落武器:怪物可以掉落3种武器: 长剑,匕首,斧头 英雄装备长剑,获得2点hp 英雄装备匕首,获得2点atk 英雄装备斧头,获得2点def 英雄装备不同的武器,使用策略模式去实现 注意:测试的时候,英雄在更换武器的时候,记得使用策略模式,将英雄之间装备的武器属性扣除后,再增加新属性 打败怪物掉落什么武器,自己设计,但是要求怪物掉落武器是一个简单工厂模式。
2025-08-01 09:08:23
162
原创 7.29作业
1:写一个Msg消息队列类,要求有以下功能 Msg m() 构造函数,创建消息队列 m[1] << "hello" 向消息队列的1频道写入数据"hello",当然可以是其他的字符串数据 m[2] >> str :从2频道读取消息,并且将读到的消息存入str中 析构函数:删除消息队列。写一个发工资的函数,要求,能够为所有员工发放工资,即使追加新的岗位,也不会改变这个函数的逻辑。有一个 Manger 经理类,继承自员工类,每个月获得 15000工资。
2025-07-30 09:08:52
135
原创 7.8作业
printf("请输入接收消息的类型:");printf("请输入消息的类型:");printf("请输入消息内容:");//2. 根据秘钥创建消息队列。//2. 根据秘钥创建消息队列。//4.删除消息队列。//4.删除消息队列。//A.进程发送消息。//A.进程发送消息。
2025-07-08 00:43:18
246
原创 7.1作业
1将当前的时间写入到time. txt的文件中,如果ctrl+c退出之后,在再次执行支持断点续写。//按下ctrl+c停止,再次执行程序。2.使用文件IO函数实现图片的拷贝。
2025-07-01 23:49:42
158
原创 6.28大作业
4>修改信息update:可以修改联系人信息并保存,修改联系人信息有包括了对联系人编号,姓名,性别,电话号码的分别修改,也可以同时对编号,姓名,性别,电话号码修改5>删除信息delete:可根据输入的姓名进行删除。意义:对于一个通信录来说,要管理联系人的信息,包括编号,姓名,性别,电话。1>注册模块:完成用户信息的注册用于登录管理系统,将注册信息存入结构体数织。6>插入信息insert:将给定的信息以及插入位置信息完成插入。7>展示信息show:将通讯录的所有信息进行展示。项目:基于链表的通信录管理。
2025-06-30 00:42:45
127
原创 6.23作业
printf(" 找到键 %d: 值 = %d\n", testKeys[i], foundValue);printf("插入: 键=%d, 值=%d\n", keys[i], values[i]);printf(" 未找到键 %d\n", testKeys[i]);printf("\n哈希表内容(大小:%d):\n", table->size);printf("│ 桶索引 │ 键值对 (key:value) │\n");printf("\n查找测试:\n");
2025-06-23 17:19:31
304
原创 数据结构(3)
顺序表的优势在于其内存连续存储的特性,这使得它拥有极快的随机访问速度,能直接通过下标定位元素,并且存储密度高,对CPU缓存友好,实现也相对简单;链表的优势则在于其动态内存分配,这使得插入和删除操作非常高效,仅需修改指针,并且能按需动态伸缩,无需预先确定容量,空间利用率高无浪费;但其劣势是无法高效随机访问,必须从头节点顺序遍历,存储密度较低,对CPU缓存不友好,实现上指针操作更复杂且容易出错,同时频繁的小内存分配/释放可能带来内存碎片问题。printf("申请空间失败\n");头删、尾删、按位置删除。
2025-06-17 20:32:00
282
原创 数据结构(2)
/4、因为新结点的指针域在申请后已经置NULL了,无需再次重置。printf("入参为空,请检查\n");printf("入参为空,请检查\n");printf("入参为空,请检查\n");printf("申请空间失败\n");//尾结点的条件p->next==NULL;//3、让最后一个结点的指针域指向新结点。2.按值修改(多个一样的值改第一个)//2、申请新的数据结点。//1、申请单链表(头结点)4.尝试实现单向循环链表。//2、申请数据节点。
2025-06-16 20:24:24
377
原创 6.9作业
33.若有定义int x[4][3]={1,2,3,4,5,6,7,8,9,10,11,12};34.若有说明:char *language[]={“FORTRAN”,”BASIC”,”PASCAL”,”JAVA”,”C”};28.若有定义:int x[10]={0,1,2,3,4,5,6,7,8,9},*p1;20.若有程序段:int a[2][3],(*p)[3];25.若有定义:int b[4][6],*p,*q[4];
2025-06-10 00:29:06
587
原创 5.28作业
33.若有定义int x[4][3]={1,2,3,4,5,6,7,8,9,10,11,12};34.若有说明:char *language[]={“FORTRAN”,”BASIC”,”PASCAL”,”JAVA”,”C”};28.若有定义:int x[10]={0,1,2,3,4,5,6,7,8,9},*p1;19.若有程序段:int a[2][3],(*p)[3];25.若有定义:int b[4][6],*p,*q[4];s=”china”;
2025-06-09 08:04:10
758
原创 C语言学习日志第八天
输入5个人的姓名,实现升序排序 strcmp strcpy。3.输入一个二维数组,计算每一行的和,每一列的和。2.输入一个m行n列的二维数组,计算第二大值。6.输入一个字符串,实现单词的逆置。5.使用非函数实现atoi函数。4.使用非函数实现字符串比较。
2025-06-04 20:07:26
120
原创 C语言学习日志第七天
'\0') { //循环判断str[i]不等于空格 且 str[i]不等于\0 ,i++ k =i-1 //交换j--k之间的字符 //循环跳过空格,等于空格则循环 i++ j=i }4.strlen strcpy strcat的非函数。5.输入一个字符串,把字符串中的字符组成一个整数。2.以空格为间隔,单词逆置。3.输入一个字符串,实现单词逆置。1.牛客网 一套理论题目。sum=sum*10+数。
2025-06-03 20:24:20
215
原创 C语言学习日志第六天
张丘建在《算经》一书中提出的数学问题:“鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一。4.定义变量key,和数组实现输入,请判断key在数组中是否存在。百钱买百鸡,问鸡翁、鸡母、鸡雏各几何?3.输入年月日,判断这是这一年的第几天?5.定义一个数组并输入,计算数组的最大值。4.输入一个数,判断是否是回文数?12321 正序和逆序结果一致。百鸡百钱是我国古代数学家。
2025-06-02 23:12:24
193
原创 C语言学习日志第五天
1.使用do..while实现,输入账户和密码的三次登录 账户:A 密码:1234。第一次失败,则提示第一次登录失败,还有2次机会。第二次失败,则提示第2次登录失败,还有1次机会。2.输入年月日,判断这是这一年的第几天?3.输入一个数,判断是否是完美数?第三次登录失败,则提示账户被锁定。完美数:除了本身的约数和等于本身。输入一个数,判断是否是回文数?12321 正序和逆序结果一致。5.解读代码,该程序循环多少次。
2025-05-29 20:37:09
146
原创 C语言学习日志第四天
2.只能内其中两个整数整除(输出两个数,小的在前,大的在后,例如3 5 或者 3 7 或者5 7,中间使用空格隔开)1. 输入用户名和密码,如果用户名和密码正确则登录成功,否则失败,默认用户名为A,密码是1234。6.给定一个整数,判断它是否被3、5、7整除,并输出一下信息 (笔试)1.能同时被3,5,7整除(直接输出3 5 7,每个数字之间一个空格)3. 只能被其中一个整数整除(输出这个除数)4:下面代码执行后,a\b\c的结果是?4.不能被任何数整除,输出小写字母n。
2025-05-28 20:07:34
208
原创 C语言学习日志第三天
3.公司网络配置中,|P地址的子网掩码以二进制 11111111.11111111.11111111.11111000表示,将其转换为十进制形式,说明计算步骤。192.168.55.60ip地址就是点分十进制。
2025-05-27 19:19:19
223
原创 C语言学习日志第一天
在当前目录下创建d1 d2 f1 d3 f2 d4 d5 d6 f3目录和文件,在文件f2中写入一首诗,要求按照以下格式,把f2的内容拷贝到f3文件中,最终把所有文件以及内容赋值到Windows中。
2025-05-26 19:21:59
227
原创 5.5作业
将目录及其内部所有文件的所有者改为嵌入式专用用户emb_user。第一个变量:要备份的日志目录路径(如 /home/ubuntu/log)第二个变量:压缩格式(可选 gz/bz2/xz,默认 gz)2、自动日志备份脚本 log_backup.sh。同时将所属组改为embedded组。用 tar 打包日志目录。
2025-05-04 22:46:22
176
原创 5.4作业
2、创建script.sh文件,修改文件权限:将script.sh设置为所有者可读写执行,其他用户只读。1、用file命令检查/bin/ls的文件信息,结果追加到file_types.txt。3、统计当前目录下所有.c文件的数量。
2025-05-04 22:10:18
111
原创 5.3作业
1、查找/etc目录下所有后缀为.conf的文件,将路径保存到etc_configs.list。2、用xz解压一个已有的.xz文件(如log.tar.xz)3、用管道符统计/var/log/syslog文件的总行数。4、设置系统在5分钟后自动重启。
2025-05-04 21:50:49
89
原创 5.2作业
2、为/bin/ping创建硬链接ping_hard和符号链接ping_soft。1、创建嵌入式专用用户emb_user,设置组为ubuntu。3、统计系统所有以 "root" 用户运行的进程数量。
2025-05-02 16:36:23
94
原创 5.1作业
1、使用tar打包/var/log目录为log.tar,再用xz、gzip、bzip2分别压缩该包,比较压缩率。2、将系统用户列表(/etc/passwd)的前3行和后5行同时输出到新文件user_snippet.txt。3、编写脚本auto_backup.sh:用当前日期命名,打包压缩/home目录(任选一种压缩格式)4、完成操作后,将压缩包删除。
2025-05-02 16:02:45
215
原创 学习日志(1)
enum 枚举名 { 枚举项1, 枚举项2, ··· 枚举项n, };typedef enum 枚举名 { 枚举项1, 枚举项2, ··· 枚举项n, }A;---->后续可以直接使用A定义枚举类型。参数:size_t size ---->从堆区申请多少个字节的内存(以字节为单位)----->静态区中的.ro段。返回值:void * ----->万能指针:可以强转为任何类型的指针。参数:万能指针,可以接收任何类型的指针,接收要释放的堆区空间的首地址。---->段错误,不能更改只读区的内容。
2025-04-15 20:18:48
732
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人