吉林大学 程序设计基础 2022级 实验复盘 2.23
本人能力有限,发出只为帮助有需要的人。
以下为实验课的复盘,内容会有大量失真,请多多包涵。
此次实验限时一个小时,时间很紧张,很多内容可能并不准确。
1.输出有规律的字母串
输入输出如下;
输入:1
输出:A
输入:2
输出:ABA
输入:3
输出:ABACABA
题解如下
#include<stdio.h>
void printLetter(int n)
{if(n==0)//递归出口return;printLetter(n-1);//进行前后两轮递归,构建字母组成的结构printf("%c",n+'A'-1);//输出字母printLetter(n-1);
}
int main(void)
{int x;scanf("%d",&x);printLetter(x);return 0;
}
2.喂恐龙(11.17题目)
此题给出了一个小恐龙吃鸡肉的情景。虽然源代码很长,但编码的难度极低,基本只需要理解结构体的组成。填空的地方只需要复制粘贴,在此就不赘述了。
3.简化地图寻路(填空题)
输入一组坐标(x>=1且y>=1)作为终点,以在第一象限中的(1,1)为起始点,计算从起始点到终点需要走的步数。
输入:3 3
输出:4
原题为(注释处为缺少的空)
此题空的位置比较刁钻,记忆的版本和现实可能有误差
#include<stdio.h>
/*
*/
int findStep(int m,int n)
{if(/* */)
/**/return findStep(m-1,n)+/* */;
}
int main (void)
{int m,n;scanf("%d %d",&m,&n);printf("%d",findStep(m,n));return 0;
}
一种题解(可能和想考的不一样)
#include<stdio.h>
int flag=0;//设置flag为全局变量,标记走过的步数
int findStep(int m,int n)//此题原点出发只有两个方向,不用回溯
{if(m==1&&n==1)//注意此题的出发点是(1,1)则此处为递归出口return flag;flag++;if(m>1)//保证m不会越界return findStep(m-1,n);if(n>1)//保证n不会越界return findStep(m,n-1);return 0;
}
int main (void)
{int m,n;scanf("%d %d",&m,&n);printf("%d",findStep(m,n));return 0;
}
4.删除链表中的重复元素
此题和oj期末考试(2.23)的题干一致,但此题作为填空题,我没能在考试时间内理解其代码想表达意思,就不在这里写了。有需要的可以看看期末考试(2.23)中的解法。
给出一个结构体链表,包含姓名、学号、年龄三个要素。输入一个n,要求输入n个三要素后,再输入一个数字,删除年龄为这个数字的链表节点,并输出链表。
输入:
3
1 zhangsan 18
2 lisi 19
3 wangwu 18
18
输出
2 lisi 19
题解如下
#include <stdio.h>
#include <malloc.h>
struct cell
{int x;char name[1000];//字符数字储存姓名int age;struct cell* next;
};struct cell *build(int num)//输入链表
{struct cell *tmp;struct cell *headA = (struct cell*)malloc(sizeof(struct cell));scanf("%d %s %d",&headA->x,headA->name,&headA->age);//注意字符串的输入方法struct cell *end = headA;for(int i=0; i<num-1; i++)//输入num个元素{tmp = (struct cell*)malloc(sizeof(struct cell));scanf("%d %s %d",&tmp->x,tmp->name,&tmp->age);end->next = tmp;end = tmp; }end->next = NULL;return headA;
}void print(struct cell* head)//输出链表
{struct cell* p;p=head;while(p!=NULL){printf("%d %s %d\n",p->x,p->name,p->age);p=p->next;}
}
void release(struct cell* head)//释放链表所占用的空间
{struct cell *p,*tmp;p=tmp=head->next;while(p!=NULL){tmp=p;p=p->next;free(tmp);}p=head=tmp=NULL;
}struct cell* delCell(struct cell *head,int n)
{while(head->age==n)//当头节点的值要删除时,将头节点向后挪head=head->next;struct cell *p,*p0;p=head;while(p!=NULL){if(p->age==n)//删除节点的标准操作{p0->next=p->next;p=p0;}p0=p;p=p->next;}return head;
}int main(void)
{struct cell*head;int num,n;scanf("%d",&num);head=build(num);scanf("%d",&n);head=delCell(head,n);print(head);release(head);return 0;
}
相关文章:
吉林大学 程序设计基础 2022级 实验复盘 2.23
本人能力有限,发出只为帮助有需要的人。 以下为实验课的复盘,内容会有大量失真,请多多包涵。 此次实验限时一个小时,时间很紧张,很多内容可能并不准确。 1.输出有规律的字母串 输入输出如下; 输入&…...
Linux系列 常用命令(目录和文件管理)vi和vim 编辑使用,(笔记)
作者简介:一名云计算网络运维人员、每天分享网络与运维的技术与干货。 座右铭:低头赶路,敬事如仪 个人主页:网络豆的主页 目录 前言 一.常用命令(目录和文件管理) 1.查看文件内容 2.统计…...
OpenCV入门(一)Python环境的搭建
OpenCV入门(一)Python环境的搭建 因为有点Python基础,并且Python是比较好入门的编程语言,所以,机器视觉后面打算在Python这个平台下进行。 Windows平台OpenCV的Python开发环境搭建 1、Python 的下载与安装 Python是…...
3.查找算法:顺序查找和二分查找
查找查找,是指在一些数据元素中,通过一定的方法找出与给定关键字相同的数据元素的过程。列表查找(线性表查找):从列表中查找指定元素输入:列表,待查找元素输出:元素下标(…...
攻不下dfs不参加比赛(七)
标题 为什么练dfs题目总结重点为什么练dfs 相信学过数据结构的朋友都知道dfs(深度优先搜索)是里面相当重要的一种搜索算法,可能直接说大家感受不到有条件的大家可以去看看一些算法比赛。这些比赛中每一届或多或少都会牵扯到dfs,可能提到dfs大家都知道但是我们为了避免眼高手…...
精确光度预测计算工具:AGi32 Crack
什么是AGi32? AGi32首先是一种用于精确光度预测的计算工具:一种技术工具,可以计算任何情况下的照度,协助灯具放置和瞄准,并验证是否符合任意数量的照明标准。 然而,要增强对光度学结果的理解,还…...
47个SQL性能优化技巧,看到就是赚到
1、先了解MySQL的执行过程 了解了MySQL的执行过程,我们才知道如何进行sql优化。 (1)客户端发送一条查询语句到服务器; (2)服务器先查询缓存,如果命中缓存,则立即返回存储在缓存中的…...
汇川SV660N与基恩士 KV7500 控制器调试说明
1. 伺服相关部分配置 1.1 伺服相关版本 SV660N 试机建议使用“SV660N-Ecat_v0.09.xml”及以上设备描述文件。 SV660N 单板软件版本建议为“H0100901.4”及更高版本号。 1.2 相关参数说明 SV660N 对象字典中 60FD 的含义较 IS620N 有所更改:bit0、1、2 分别为负限位…...
图观 | ChatGTP是如何通过知识图谱回答问题的?
文/Emma Z1950年,图灵发表了具有里程碑意义的论文《计算机器与智能》(Computing Machinery and Intelligence),提出了一个关于机器人的著名判断原则——图灵测试,也被称为图灵判断,它指出如果第三者无法辨别…...
Mysql的索引
为什么写这篇文章呢~最近在梳理公司的数据库,在查看表结构的时候发现了这个 CREATE TABLE esp_5_N (ID int(11) NOT NULL AUTO_INCREMENT,pId int(11) DEFAULT NULL,EsFileId varchar(32) DEFAULT NULL,obligate1 varchar(45) DEFAULT NULL,obligate2 varchar(45) …...
计算机的发展
个人简介:云计算网络运维专业人员,了解运维知识,掌握TCP/IP协议,每天分享网络运维知识与技能。个人爱好: 编程,打篮球,计算机知识个人名言:海不辞水,故能成其大;山不辞石…...
理解Spring中的依赖注入和控制反转
依赖注入(Dependency Injection)是一种面向对象编程的设计模式,用于解决对象之间的依赖关系。它的基本思想是将对象的创建和管理工作交给容器来完成,而不是在应用程序中手动创建和管理对象,从而达到松耦合、易维护、易…...
XXL-JOB
XXL-JOB介绍 XXL-JOB是一个轻量级分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。 官网:https://www.xuxueli.com/xxl-job/ 文档:分布式任务调度…...
「牛客网C」初学者入门训练BC134,BC136
🐶博主主页:ᰔᩚ. 一怀明月ꦿ ❤️🔥专栏系列:线性代数,C初学者入门训练 🔥座右铭:“不要等到什么都没有了,才下定决心去做” 🚀🚀🚀大家觉不错…...
华为OD机试题【翻转单词顺序】用 C++ 进行编码 (2023.Q1)
最近更新的博客 华为od 2023 | 什么是华为od,od 薪资待遇,od机试题清单华为OD机试真题大全,用 Python 解华为机试题 | 机试宝典【华为OD机试】全流程解析+经验分享,题型分享,防作弊指南华为od机试,独家整理 已参加机试人员的实战技巧文章目录 最近更新的博客使用说明翻转单…...
4.Spring【Java面试第三季】
4.Spring【Java面试第三季】前言推荐4.Spring27_Aop的题目说明要求Spring的AOP顺序AOP常用注解面试题28_spring4下的aop测试案例业务类新建一个切面类MyAspect并为切面类新增两个注解:spring4springboot1.5.9pom测试类29_spring4下的aop测试结果aop正常顺序异常顺序…...
ZLibrary使用说明-Zlirbrary
ZLibrary使用说明如果您是一位书虫,那么ZLibrary是一个值得一试的网站。该网站提供了大量的免费电子书籍,涵盖了各种不同的主题和类别。下面是一些有关如何使用ZLibrary的详细说明:第1步:访问ZLibrary网站要使用ZLibraryÿ…...
TwinCAT3第三方伺服电机——汇川SV660N使用
目录 一、第三方伺服在TC3中配置和使用 二、xml文件拷贝 编辑 三、IO中扫描伺服 四、工程测试 五、汇川伺服参数设置说明 一、第三方伺服在TC3中配置和使用 在倍福控制系统中使用第三方伺服可以参见本人另一篇博客,有详细教程说明。本文仅仅对SV660N伺服设置…...
进制转换(二进制,八进制,十进制,十六进制)涵盖整数与小数部分,内容的图片全为手写【详细图解】
各种进制之间的相互转换1. 各进制表示数1.1 数码1.2 基数1.3 位权2. 十进制转换为其他进制2.1 整数部分2.2 小数部分3. 其他进制转换为十进制4. 二进制转换为八进制5. 二进制转换为十六进制6. 八进制转换为十六进制1. 各进制表示数 二进制:0,1逢二进一 八…...
谈谈XR关键技术及VR/AR/MR/XR关系
一、先别被VR/AR/MR/XR搞晕,说说区别虚拟现实(Virtual Reality,VR)、增强现实(Augmented Reality,AR)等业务以其三维化、自然交互、空间计算等完全不同于当前移动互联网的特性,被认为…...
Java 语言特性(面试系列2)
一、SQL 基础 1. 复杂查询 (1)连接查询(JOIN) 内连接(INNER JOIN):返回两表匹配的记录。 SELECT e.name, d.dept_name FROM employees e INNER JOIN departments d ON e.dept_id d.dept_id; 左…...
3.3.1_1 检错编码(奇偶校验码)
从这节课开始,我们会探讨数据链路层的差错控制功能,差错控制功能的主要目标是要发现并且解决一个帧内部的位错误,我们需要使用特殊的编码技术去发现帧内部的位错误,当我们发现位错误之后,通常来说有两种解决方案。第一…...
React Native在HarmonyOS 5.0阅读类应用开发中的实践
一、技术选型背景 随着HarmonyOS 5.0对Web兼容层的增强,React Native作为跨平台框架可通过重新编译ArkTS组件实现85%以上的代码复用率。阅读类应用具有UI复杂度低、数据流清晰的特点。 二、核心实现方案 1. 环境配置 (1)使用React Native…...
Linux云原生安全:零信任架构与机密计算
Linux云原生安全:零信任架构与机密计算 构建坚不可摧的云原生防御体系 引言:云原生安全的范式革命 随着云原生技术的普及,安全边界正在从传统的网络边界向工作负载内部转移。Gartner预测,到2025年,零信任架构将成为超…...
Axios请求超时重发机制
Axios 超时重新请求实现方案 在 Axios 中实现超时重新请求可以通过以下几种方式: 1. 使用拦截器实现自动重试 import axios from axios;// 创建axios实例 const instance axios.create();// 设置超时时间 instance.defaults.timeout 5000;// 最大重试次数 cons…...
【JavaWeb】Docker项目部署
引言 之前学习了Linux操作系统的常见命令,在Linux上安装软件,以及如何在Linux上部署一个单体项目,大多数同学都会有相同的感受,那就是麻烦。 核心体现在三点: 命令太多了,记不住 软件安装包名字复杂&…...
全志A40i android7.1 调试信息打印串口由uart0改为uart3
一,概述 1. 目的 将调试信息打印串口由uart0改为uart3。 2. 版本信息 Uboot版本:2014.07; Kernel版本:Linux-3.10; 二,Uboot 1. sys_config.fex改动 使能uart3(TX:PH00 RX:PH01),并让boo…...
Device Mapper 机制
Device Mapper 机制详解 Device Mapper(简称 DM)是 Linux 内核中的一套通用块设备映射框架,为 LVM、加密磁盘、RAID 等提供底层支持。本文将详细介绍 Device Mapper 的原理、实现、内核配置、常用工具、操作测试流程,并配以详细的…...
【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的“no matching...“系列算法协商失败问题
【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的"no matching..."系列算法协商失败问题 摘要: 近期,在使用较新版本的OpenSSH客户端连接老旧SSH服务器时,会遇到 "no matching key exchange method found", "n…...
Kafka入门-生产者
生产者 生产者发送流程: 延迟时间为0ms时,也就意味着每当有数据就会直接发送 异步发送API 异步发送和同步发送的不同在于:异步发送不需要等待结果,同步发送必须等待结果才能进行下一步发送。 普通异步发送 首先导入所需的k…...
