Linux程序开发(一):Linux基础入门安装和实操手册
Tips:"分享是快乐的源泉💧,在我的博客里,不仅有知识的海洋🌊,还有满满的正能量加持💪,快来和我一起分享这份快乐吧😊!
喜欢我的博客的话,记得点个红心❤️和小关小注哦!您的支持是我创作的动力!数据源
存放在我的资源下载区啦!
Linux程序开发(一):Linux基础入门安装和实操手册
目录
- Linux程序开发(一):Linux基础入门安装和实操手册
- 第一次作业
- 1、Linux与Unix的关系?
- 2、Linux内核版本和发行版本的差别?
- 3、解释GPL、POSIX、LBS。
- 4、安装自己的Linux运行环境,该任务在自己的机器上完成,架设完毕后写出主要安装步骤并截图。
- ==(1)下载VMWARE,安装centos7==
- ==(2)关联centOS镜像==
- ==(3)安装centOS镜像==
- ==(4)直接回车==
- ==(5)镜像检测,在这里可以直接按下Esc键,跳过检测==
- ==(6)等待一会, 就会出现以下界面==
- ==(7)以root用户身份登录: 输入 root , 然后输入密码 即可登录成功==
- 5、给出班里某门课程的成绩单,请你按成绩从高到低对成绩单排序输出,如果有相同分数则名字字典序小的在前。
- 6、用递归的方法求 Hermite 多项式的值
第一次作业
问答题:
1、Linux与Unix的关系?
Linux与Unix有很紧密的关系。
(1)Linux最初是由Linus Torvalds在1991年编写的:它的核心遵循了Unix的设计思路,并参考了一些Unix的代码。因此,Linux与Unix有着相似的命令行界面、文件系统结构和进程管理方式。(2)另外,Linux还内置了许多来自Unix的工具和服务:但是,Linux并不是完全兼容Unix的,在一些细节上还存在差异。另外值得注意的是,Unix是一个商业操作系统,而Linux则是一个开源免费的操作系统。
2、Linux内核版本和发行版本的差别?
Linux内核版本和发行版之间是有一些差异的。(1)Linux内核是操作系统的核心部分:它控制着硬件和软件之间的交互。Linux内核版本号通常由三个数字构成,例如:5.14.6。每个数字表示一个层次结构:大版本、次要版本和修订版本。新版本的内核通常包含了新的功能和性能优化,并且也会修复已知的安全漏洞和bug。(2)Linux发行版则是基于Linux内核的完整操作系统:并包括一个桌面界面、应用程序、工具等。常见的Linux发行版包括Ubuntu、Debian、Red Hat Enterprise Linux、CentOS、Fedora等。不同发行版之间会有不同的软件包管理系统、默认桌面环境、配置文件位置等等。发行版会对Linux内核进行定制和打包以便于用户使用。(3)简单来说,Linux内核是操作系统的核心:控制着硬件和软件之间的交互。而发行版则是基于Linux内核的完整操作系统,包含了桌面界面和各种应用程序。
3、解释GPL、POSIX、LBS。
GPL(General Public License):通用公共许可证是一种开源软件许可证,它保障了用户对软件的自由使用、修改和分发。GPL要求在使用或修改基于GPL许可的软件时,必须将修改后的代码也以GPL许可证的形式进行发布。这意味着GPL许可证确保了开源软件在整个生命周期中的开放性和自由性,鼓励开发者共享和合作。POSIX(Portable Operating System Interface for Unix):可移植操作系统接口标准是为了使Unix和类Unix操作系统之间具有可移植性而制定的一套标准。POSIX定义了一系列的API(应用程序接口)和命令行工具规范,旨在提供一致的系统调用接口、文件系统结构、下层硬件接口等,使得符合POSIX标准的应用程序可以在不同的POSIX兼容操作系统上运行。LBS(Location-Based Service):基于位置的服务是指利用移动通信技术和位置信息来提供与用户位置相关的各种应用和服务。通过LBS,用户可以获取周边商家信息、导航路线、地图定位、社交媒体签到等功能。LBS技术通常依赖于全球定位系统(GPS)或移动基站信号定位,结合地图数据和其他相关信息实现服务的提供。LBS在移动互联网时代得到了广泛的应用,为用户提供了更便捷和个性化的服务体验。
实验题:
4、安装自己的Linux运行环境,该任务在自己的机器上完成,架设完毕后写出主要安装步骤并截图。
提示:有三种方式架设Linux运行环境
- 第一种方式,独立安装:在计算机硬件上独立安装Linux发行版本。
- 第二种方式,虚拟机安装:在Windows操作系统或者Mac操作系统中安装虚拟机软件,虚拟机上再安装Linux操作系统。
- 第三种方式,软件仿真:在Windows系统中安装cygwin的类Unix运行环境。
(1)下载VMWARE,安装centos7
(2)关联centOS镜像
(3)安装centOS镜像
(4)直接回车
(5)镜像检测,在这里可以直接按下Esc键,跳过检测
(6)等待一会, 就会出现以下界面
(7)以root用户身份登录: 输入 root , 然后输入密码 即可登录成功
编程题:
5、给出班里某门课程的成绩单,请你按成绩从高到低对成绩单排序输出,如果有相同分数则名字字典序小的在前。
输入格式
第一行为 n(0<n<20),表示班里的学生数目;
接下来的 n 行,每行为每个学生的名字和他的成绩, 中间用单个空格隔开。名字只包含字母且长度不超过 20,成绩为一个不大于 100 的非负整数。
输出
把成绩单按分数从高到低的顺序进行排序并输出,每行包含名字和分数两项,之间有一个空格。
输入样例
4
Kitty 80
Hanmeimei 90
Joey 92
Tim 28
输出样例
Joey 92
Hanmeimei 90
Kitty 80
Tim 28
代码实现
// 添加了#define _CRT_SECURE_NO_WARNINGS,以消除关于scanf函数不安全的警告
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>#define maxSize 21struct student {char name[maxSize];int score;
};// 冒泡排序函数,按照分数从高到低排序,如果分数相同,则按照姓名的字典序排序
void bubbleSort(struct student s[], int n) {struct student temp;for (int i = 0; i < n - 1; i++) {for (int j = 0; j < n - i - 1; j++) {// 如果当前元素的分数比下一个元素的分数小,交换位置if (s[j].score < s[j + 1].score) {temp = s[j];s[j] = s[j + 1];s[j + 1] = temp;}// 如果当前元素的分数与下一个元素的分数相等,但是姓名的字典序大于下一个元素的姓名字典序,交换位置if (s[j].score == s[j + 1].score && strcmp(s[j].name, s[j + 1].name) > 0) {temp = s[j];s[j] = s[j + 1];s[j + 1] = temp;}}}
}int main() {struct student s[maxSize], temp; // 定义一个结构体数组s来存储学生信息,temp用于交换临时变量int n; // 学生数量scanf("%d", &n); // 输入学生数量// 输入学生信息,包括姓名和分数for (int i = 0; i < n; i++)scanf("%s%d", s[i].name, &(s[i].score));// 调用冒泡排序函数,对学生信息进行排序bubbleSort(s, n);// 输出排序后的学生信息for (int i = 0; i < n; i++)printf("%s %d\n", s[i].name, s[i].score);return 0;
}
代码结果
6、用递归的方法求 Hermite 多项式的值
h n ( x ) = { 1 n = 0 2 x n = 1 2 x h n − 1 ( x ) − 2 ( n − 1 ) h n − 2 ( x ) n > 1 h_n\left(x\right)= \begin{cases} 1 \qquad n=0\\ 2x \qquad n=1\\ 2xh_{n-1}\left(x\right)-2\left(n-1\right)h_{n-2}\left(x\right) \qquad n>1 \end{cases} hn(x)=⎩ ⎨ ⎧1n=02xn=12xhn−1(x)−2(n−1)hn−2(x)n>1
对给定的 x 和正整数 n ,求多项式的值,并保留两位小数。
输入格式
给定的 n 和正整数 x。
输出格式
多项式的值。
输入样例
1 2
输出样例
4.00
// 添加了#define _CRT_SECURE_NO_WARNINGS,以消除关于scanf函数不安全的警告
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>// hermite递归函数
double hermite(int n, int x)
{if(0==n)return 1;else if(1==n)return 2*x;elsereturn 2*x*hermite(n-1, x)-2*(n-1)*hermite(n-2, x);
}int main()
{int n, x;scanf("%d %d", &n, &x);printf("%.2f\n", hermite(n, x));return 0;
}==== 代码
代码结果
相关文章:

Linux程序开发(一):Linux基础入门安装和实操手册
Tips:"分享是快乐的源泉💧,在我的博客里,不仅有知识的海洋🌊,还有满满的正能量加持💪,快来和我一起分享这份快乐吧😊! 喜欢我的博客的话,记得…...

Java | Leetcode Java题解之第92题反转链表II
题目: 题解: class Solution {public ListNode reverseBetween(ListNode head, int left, int right) {// 设置 dummyNode 是这一类问题的一般做法ListNode dummyNode new ListNode(-1);dummyNode.next head;ListNode pre dummyNode;for (int i 0; …...

声纹识别在无人机探测上的应用
无人机在民用和军事领域的应用越来越广泛。然而,随着无人机数量的增加,"黑飞"现象也日益严重,对公共安全和隐私构成了威胁。因此,开发有效的无人机探测与识别技术变得尤为重要。及时发现黑飞无人机的存在进而对其型号进…...

【数据结构】时间、空间复杂度实例分析
跌倒了,就重新站起来,继续向前走;傻坐在地上是没用的。💓💓💓 目录 •✨说在前面 🍋知识点一:算法的效率 • 🌰1.斐波那契数列的第n项 • 🌰2.算法的复杂度…...

2024生日快乐祝福HTML源码
源码介绍 2024生日快乐祝福HTML源码,源码由HTMLCSSJS组成,记事本打开源码文件可以进行内容文字之类的修改,双击html文件可以本地运行效果,也可以上传到服务器里面, 源码截图 源码下载 2024生日快乐祝福HTML源码...

Android系统不同版本存储权限
一、Android存储简介 Android系统分为内部存储和外部存储 从Android6.0开始不断在更新存储(读写)权限,除了在AndroidManifest.xml文件里声明,app运行时也要动态申请使用对应的权限 提醒:应用私有存储不需要动态申请权…...

ue引擎游戏开发笔记(41)——行为树的建立(2)--丰富ai行为:巡逻后返回原处
1.需求分析: 就敌人ai而言,追踪到敌人有可能丢失目标,丢失目标后应该能返回原来位置,实现这一功能。 2.操作实现: 1.思路:利用clear value函数,禁用掉当前的追踪功能,执行之后的返…...
Linux quotacheck命令教程:如何检查和修复文件系统的磁盘配额(附案例详解和注意事项)
Linux quotacheck命令介绍 quotacheck命令是用于扫描文件系统以检查磁盘配额的一致性。它生成、检查和修复配额文件。这个命令通常在系统引导时运行,或者在手动更改了配额设置后运行。 Linux quotacheck命令适用的Linux版本 quotacheck命令在大多数Linux发行版中…...
Response对象的学习
Response对象在Web开发中是一个重要的概念,它代表了服务器对客户端请求的响应。当客户端(如浏览器)向服务器发送一个请求后,服务器会生成一个Response对象,其中包含了服务器返回给客户端的数据、状态码、响应头等信息。…...

QCustomplot---动态图
QCustomplot绘制动态曲线图-游标及鼠标跟踪显示数值_qcustomplot 游标-CSDN博客 m_timer new QTimer(this);connect(m_timer,SIGNAL(timeout()),this,SLOT(slotTimeout()));m_timer->start(50); void MainWindow::slotTimeout() {static int p0;static int i0;double m,m1…...

蛋白聚乙二醇化修饰检测试剂盒
蛋白多肽因其高生物活性、高特异性等优点备受药物开发商和研究者的青睐。但分子量大、亲水性强、稳定性差等劣势限制了蛋白多肽在临床上的应用,特别是蛋白多肽作为一种异源蛋白具有很强的免疫原性,容易被机体免疫系统识别并清除,导致药物的血…...

[Algorithm][回溯][字母大小写全排列][优美的排列][N皇后]详细讲解
目录 1.字母大小写全排列1.题目链接2.算法原理详解3.代码实现 2.优美的排列1.题目链接2.算法原理详解3.代码实现 3.N 皇后1.题目链接2.算法原理详解3.代码实现 1.字母大小写全排列 1.题目链接 字母大小写全排列 2.算法原理详解 本题逻辑与子集大致相同 思路一:每…...

.NET_NLog
步骤 1. 添加依赖 ①Microsoft.Extensions.DependencyInjection ②NLog.Extensions.Logging(或Microsoft.Extensions.Logging.___) Tutorial NLog/NLog Wiki GitHub 2.添加nlog.config文件(默认名称, 可改为其他名称, 但需要另行配置) 文件的基础…...

Linux查看进程命令ps和top
Linux 是一种自由和开放源代码的操作系统,它的使用在全球范围内非常广泛。在 Linux 中,进程是操作系统中最重要的组成部分之一,它代表了正在运行的程序。了解如何查看正在运行的进程是非常重要的,因为它可以帮助你了解系统的运行状…...

深入解析Wireshark1:从捕获到分析,一网打尽数据包之旅
目录 1 认识 Wireshark 1.1 选择网卡界面 1.2 捕获数据包界面 1.3 常用按钮功能介绍 1.4 数据包列表信息 1.5 数据包详细信息 2 数据包案例分析 Frame: 物理层的数据帧概况 Ethernet II: 数据链路层以太网帧头部信息 Internet Protocol Version 4 (IPv4): 互联网层IP…...
C++语法|指向类成员(成员变量和成员方法)的指针及其相关应用场景
文章目录 1.基本语法指向成员变量的指针示例 指向成员函数的指针示例 注意事项 2.应用场景泛型编程和模板:通用成员访问打印函数回调机制和事件处理:基于简单GUI框架的事件处理 1.基本语法 指向类成员的指针是一种特殊的指针类型,用于指向类…...

【C语言】通讯录系统实现
目录 1、通讯录系统介绍 2、代码分装 3、代码实现步骤 3.1制作菜单函数以及游戏运行逻辑流程 3.2、封装人的信息PeoInfo以及通讯录Contact结构体类型 3.3、初始化通讯录InitContact函数 3.4、增加联系人AddContact函数 3.5、显示所有联系人ShowContact函数 3.6、删除联系人D…...
(delphi11最新学习资料) Object Pascal 学习笔记---第12章第1节 ( 类静态方法与Windows API回调)
12.1.4 类静态方法与Windows API回调 静态类方法没有隐藏的Self参数意味着静态类方法可以作为回调函数传递给操作系统(例如,在Windows上)。实际上,您可以声明一个具有stdcall调用约定的静态类方法,并将其用作直接的…...
第一个Rust程序
在安装好Rust以后,我们就可以编写程序了。 首先,我们执行下面的命令,尽量让你的rust版本和我的版本相同,或者比我的版本大。 zhangdapengzhangdapeng:~$ cargo --version cargo 1.78.0 (54d8815d0 2024-03-26) zhangdapengzhangd…...

【LInux】<基础IO> 文件操作 | 文件描述符 | 重定向
👦个人主页:Weraphael ✍🏻作者简介:目前正在学习c和算法 ✈️专栏:Linux 🐋 希望大家多多支持,咱一起进步!😁 如果文章有啥瑕疵,希望大佬指点一二 如果文章对…...
基于大模型的 UI 自动化系统
基于大模型的 UI 自动化系统 下面是一个完整的 Python 系统,利用大模型实现智能 UI 自动化,结合计算机视觉和自然语言处理技术,实现"看屏操作"的能力。 系统架构设计 #mermaid-svg-2gn2GRvh5WCP2ktF {font-family:"trebuchet ms",verdana,arial,sans-…...

Zustand 状态管理库:极简而强大的解决方案
Zustand 是一个轻量级、快速和可扩展的状态管理库,特别适合 React 应用。它以简洁的 API 和高效的性能解决了 Redux 等状态管理方案中的繁琐问题。 核心优势对比 基本使用指南 1. 创建 Store // store.js import create from zustandconst useStore create((set)…...

渗透实战PortSwigger靶场-XSS Lab 14:大多数标签和属性被阻止
<script>标签被拦截 我们需要把全部可用的 tag 和 event 进行暴力破解 XSS cheat sheet: https://portswigger.net/web-security/cross-site-scripting/cheat-sheet 通过爆破发现body可以用 再把全部 events 放进去爆破 这些 event 全部可用 <body onres…...

Python爬虫(一):爬虫伪装
一、网站防爬机制概述 在当今互联网环境中,具有一定规模或盈利性质的网站几乎都实施了各种防爬措施。这些措施主要分为两大类: 身份验证机制:直接将未经授权的爬虫阻挡在外反爬技术体系:通过各种技术手段增加爬虫获取数据的难度…...
Typeerror: cannot read properties of undefined (reading ‘XXX‘)
最近需要在离线机器上运行软件,所以得把软件用docker打包起来,大部分功能都没问题,出了一个奇怪的事情。同样的代码,在本机上用vscode可以运行起来,但是打包之后在docker里出现了问题。使用的是dialog组件,…...

关键领域软件测试的突围之路:如何破解安全与效率的平衡难题
在数字化浪潮席卷全球的今天,软件系统已成为国家关键领域的核心战斗力。不同于普通商业软件,这些承载着国家安全使命的软件系统面临着前所未有的质量挑战——如何在确保绝对安全的前提下,实现高效测试与快速迭代?这一命题正考验着…...

【JVM面试篇】高频八股汇总——类加载和类加载器
目录 1. 讲一下类加载过程? 2. Java创建对象的过程? 3. 对象的生命周期? 4. 类加载器有哪些? 5. 双亲委派模型的作用(好处)? 6. 讲一下类的加载和双亲委派原则? 7. 双亲委派模…...

[免费]微信小程序问卷调查系统(SpringBoot后端+Vue管理端)【论文+源码+SQL脚本】
大家好,我是java1234_小锋老师,看到一个不错的微信小程序问卷调查系统(SpringBoot后端Vue管理端)【论文源码SQL脚本】,分享下哈。 项目视频演示 【免费】微信小程序问卷调查系统(SpringBoot后端Vue管理端) Java毕业设计_哔哩哔哩_bilibili 项…...

打手机检测算法AI智能分析网关V4守护公共/工业/医疗等多场景安全应用
一、方案背景 在现代生产与生活场景中,如工厂高危作业区、医院手术室、公共场景等,人员违规打手机的行为潜藏着巨大风险。传统依靠人工巡查的监管方式,存在效率低、覆盖面不足、判断主观性强等问题,难以满足对人员打手机行为精…...
在 Spring Boot 项目里,MYSQL中json类型字段使用
前言: 因为程序特殊需求导致,需要mysql数据库存储json类型数据,因此记录一下使用流程 1.java实体中新增字段 private List<User> users 2.增加mybatis-plus注解 TableField(typeHandler FastjsonTypeHandler.class) private Lis…...