自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 收藏
  • 关注

原创 操作系统 c语言模仿 磁盘文件操作

目录属性和文件属性占用同一个字节,为了区别目录和文件,该字节每一位代表不同的含义(为“1”表示“是”,为“0”表示“否”),如图2.12所示,第0位表示文件为只读文件,第1位表示文件为系统文件,第2位表示文件为一般可读、可写的普通文件,第3位表示该登记项不是文件的登记项,而是目录的登记项,其余几位闲置未用。下面给出这三种操作的流程图,在已打开文件表中查找某文件是否存在的流程图如图2.15,将某文件从已打开文件表中删除的流程图如图2.16,将某个文件登记在已打开文件表的流程图如图2.17。

2024-06-11 23:23:58 1005

原创 数学模型:操作系统中FCFS、SJF、HRRN算法的平均周转时间比较 c语言

摘 要研究目的:比较操作系统中进程调度FCFS、SJF、HRRN算法的平均周转时间和带权周转时间的大小关系。研究方法:在建模分析时,分别举4个进程的例子,1个进程用两个字母分别表示到达时间和执行时间。分两种极端情况,一种是每个进程到达时cpu还在执行之前的进程,这种结果为T(FCFS)>T(HRRN)>T(SJF),W(FCFS)>W(HRRN)>W(SJF)。另一种是每个进程到达时cpu已经处理完之前的进程,这种结果为3种算法的执行都是相同的且T=W=1。而随机数据在两种极端之间。

2024-06-08 15:19:18 780

原创 PAT天梯赛L1-104 九宫格 c语言(flag[n]={0})

九宫格是一款数字游戏,传说起源于河图洛书,现代数学中称之为三阶幻方。游戏规则是:将一个 9×9 的正方形区域划分为 9 个 3×3 的正方形宫位,要求 1 到 9 这九个数字中的每个数字在每一行、每一列、每个宫位中都只能出现一次。本题并不要求你写程序解决这个问题,只是对每个填好数字的九宫格,判断其是否满足游戏规则的要求。

2024-05-21 22:56:44 186

原创 总结 处理输入字符串gets fgets scanf + 例题

gets(str);gets遇到回车符时结束,也,比较方便,但是不安全。不会存入回车符,缓冲区中也不会遗留换行符。fgets函数可以直接读取含空格的字符串。遇到回车或EOF时结束,可以存入回车,也可以循环读入多行字符串。并且fgets函数可以指定读取的最大字符数,避免缓冲区溢出的风险。这里使用了%[^\n]格式控制符来读取含空格的字符串,它表示读取到换行符\n之前的所有字符,包括空格和制表符。即读入一行字符串回车符也会存入 只有1行字符串可用 但不能直接多行分开存 ,他会直接读取所有输入的包括回车

2024-05-21 17:06:52 629

原创 操作系统 c语言 页式虚拟存储管理中地址转换和缺页中断

编写程序完成页式虚拟存储管理中地址转换过程和模拟缺页中断的处理。实验具体包括:首先对给定的地址进行地址转换工作,若发生缺页则先进行缺页中断处理,然后再进行地址转换;最后编写主函数对所作工作进程测试。

2024-05-20 22:23:32 1501

原创 操作系统 c语言模仿 动态分区存储管理方式的主存分配回收

操作系统个作业执行完后,将该分区变成空闲区,并将其与相邻的空闲区合并,主要操作也在空闲区。由于是实验,没有真正的主存要分配,所以在实验中,首先应建立一张空闲区表,初始状态只有一个空闲登记项(假定的主存空闲区)和一张所有状态都为“空”的已分配区表,假定主存空间110KB,操作系统占用10KB,其余为空闲区;然后,可以选择进行主存分配或主存回收,如果是分配,要求输入作业名和所需主存空间大小,如果是回收,输入回收作业的作业名,循环进行主存分配和回收后,如果需要,则显示两张表的内容,以检查主存的分配和回收是否正确。

2024-05-19 23:47:09 1744

原创 操作系统 c语言简单模仿进程创建和时间片轮转调度算法中的进程调度

因此,单处理器系统中进程控制块分成一个正在运行进程的进程控制块、就绪进程的进程控制块组织成的就绪队列和等待进程的进程控制块组成的等待队列。因此进程调度程序就应该包括两部分,一部分是在进程就绪队列中选择一个进程,并将其进程控制块从进程就绪队列中摘下来,另一部分工作就是分配处理器给选中的进程,也就是将指向正在运行进程的进程控制块指针指向该进程的进程控制块,并将该进程的进程控制块信息写入处理器的各个寄存器中。进程控制块的链接方式可以采用单向和双向链表,实验中,进程控制块队列采用单向不循环静态链表。

2024-05-19 16:09:39 1385

原创 PAT天梯赛L1-103 整数的持续性 c语言

从任一给定的正整数 n 出发,将其每一位数字相乘,记得到的乘积为 n1​。以此类推,令 ni+1​ 为 ni​ 的各位数字的乘积,直到最后得到一个个位数 nm​,则 m 就称为 n 的。例如 679 的持续性就是 5,因为我们从 679 开始,得到 6×7×9=378,随后得到 3×7×8=168、1×6×8=48、4×8=32,最后得到 3×2=6,一共用了 5 步。本题就请你编写程序,找出任一给定区间内持续性最长的整数。

2024-05-18 23:17:53 425

原创 PAT天梯赛L2-028 秀恩爱分得快 c语言 (“-0“)

PAT天梯赛c语言 秀恩爱,分得快。互联网上每天都有大量人发布大量照片,我们通过分析这些照片,可以分析人与人之间的亲密度。如果一张照片上出现了 K 个人,这些人两两间的亲密度就被定义为 1/K。任意两个人如果同时出现在若干张照片里,他们之间的亲密度就是所有这些同框照片对应的亲密度之和。下面给定一批照片,请你分析一对给定的情侣,看看他们分别有没有亲密度更高的异性朋友?

2024-05-18 15:19:11 851

原创 PAT天梯赛L1-102 兰州牛肉面 c语言

输入第一行给出一个正整数 N(≤100),为牛肉面的种类数量。这里为了简单起见,我们把不同种类的牛肉面从 1 到 N 编号,以后就用编号代替牛肉面品种的名称。第二行给出 N 个价格,第 i 个价格对应第 i 种牛肉面一碗的单价。这里的价格是 [0.01, 200.00] 区间内的实数,以元为单位,精确到分。品种编号 碗数其中碗数保证是正整数。当对应的品种编号为0时,表示输入结束。这个记录不算在内。

2024-05-17 18:09:46 202

原创 PAT天梯赛L1-101 别再来这么多猫娘了!c语言(KMP)(字符串回车结束)

因此你的工作是实现一个审查内容的代码,用于对 AI 生成的内容的初步审定。更具体地说,你会得到一段由大小写字母、数字、空格及 ASCII 码范围内的标点符号的文字,以及若干个违禁词以及警告阈值,你需要首先检查内容里有多少违禁词,如果少于阈值个,则简单地将违禁词替换为;如果大于等于阈值个,则直接输出一段警告并输出有几个违禁词。

2024-05-17 00:53:20 769

原创 PAT天梯赛L2-002 链表去重 c语言(动态链表存储)

PAT天梯赛L2-002 链表去重 c语言给定一个带整数键值的链表 L,你需要把其中绝对值重复的键值结点删掉。即对每个键值 K,只有第一个绝对值等于 K 的结点被保留。同时,所有被删除的结点须被保存在另一个链表上。例如给定 L 为 21→-15→-15→-7→15,你需要输出去重后的链表 21→-15→-7,还有被删除的链表 -15→15。

2024-05-16 14:43:16 955

原创 PAT乙级1022 D进制的A+B c语言

PAT乙级1022 D进制的A+B c语言 输入两个非负 10 进制整数 A 和 B (≤230−1),输出 A+B 的 D (1

2024-05-16 13:16:13 152

原创 PAT乙级1021 个位数统计 c语言

1021 个位数统计 给定一个 k 位整数 N=dk−1​10k−1+⋯+d1​101+d0​ (0≤di​≤9, i=0,⋯,k−1, dk−1​>0),请编写程序统计每种不同的个位数字出现的次数。例如:给定 N=100311,则有 2 个 0,3 个 1,和 1 个 3。

2024-05-16 12:37:04 235

原创 PAT乙级1020 月饼 c语言

PAT乙级1020 月饼 c语言月饼是中国人在中秋佳节时吃的一种传统食品,不同地区有许多不同风味的月饼。现给定所有种类月饼的库存量、总售价、以及市场的最大需求量,请你计算可以获得的最大收益是多少。注意:销售时允许取出一部分库存。样例给出的情形是这样的:假如我们有 3 种月饼,其库存量分别为 18、15、10 万吨,总售价分别为 75、72、45 亿元。如果市场的最大需求量只有 20 万吨,那么我们最大收益策略应该是卖出全部 15 万吨第 2 种月饼、以及 5 万吨第 3 种月饼,

2024-05-15 20:35:33 193

原创 PAT乙级1019 数字黑洞 c语言 (数字与字符串相互转化 冒泡排序)

PAT乙级1019 数字黑洞 c语言 数字与字符串相互转化 冒泡排序 给定任一个各位数字不完全相同的 4 位正整数,如果我们先把 4 个数字按非递增排序,再按非递减排序,然后用第 1 个数字减第 2 个数字,将得到一个新的数字。一直重复这样做,我们很快会停在有“数字黑洞”之称的6174,这个神奇的数字也叫 Kaprekar 常数。例如,我们从6767开始,将得到现给定任意 4 位正整数,请编写程序演示到达黑洞的过程。

2024-05-15 14:36:31 225

原创 PAT乙级1017 A除以B c语言 (字符串存储)

PAT乙级1017 A除以B c语言 (字符串存储)本题要求计算 A/B,其中 A 是不超过 1000 位的正整数,B 是 1 位正整数。你需要输出商数 Q 和余数 R,使得 A=B×Q+R 成立。

2024-05-14 21:14:57 255 2

原创 PAT乙级1018 锤子剪刀布 c语言 (结构体 函数)

PAT乙级1018 锤子剪刀布 c语言 (结构体 函数)大家应该都会玩“锤子剪刀布”的游戏:两人同时给出手势,胜负规则如图所示:现给出两人的交锋记录,请统计双方的胜、平、负次数,并且给出双方分别出什么手势的胜算最大。

2024-05-14 14:48:37 236 1

原创 PAT乙级1016 部分A+B c语言

PAT乙级1016 部分A+B c语言 正整数 A 的“DA​(为 1 位整数)部分”定义为由 A 中所有 DA​ 组成的新整数 PA​。例如:给定 A=3862767,DA​=6,则 A 的“6 部分”PA​ 是 66,因为 A 中有 2 个 6。现给定 A、DA​、B、DB​,请编写程序计算 PA​+PB​。

2024-05-14 11:57:48 162 1

原创 PAT乙级1015 德才论 c语言(希尔排序)

宋代史学家司马光在《资治通鉴》中有一段著名的“德才论”:“是故才德全尽谓之圣人,才德兼亡谓之愚人,德胜才谓之君子,才胜德谓之小人。凡取人之术,苟不得圣人,君子而与之,与其得小人,不若得愚人。现给出一批考生的德才分数,请根据司马光的理论给出录取排名。

2024-05-13 23:40:44 332

原创 PAT乙级1014 福尔摩斯的约会 c语言

PAT乙级1014 福尔摩斯的约会大侦探很快就明白了,字条上奇怪的乱码实际上就是约会的时间星期四 14:04,因为前面两字符串中第 1 对相同的大写英文字母(大小写有区分)是第 4 个字母D,代表星期四;第 2 对相同的字符是E,那是第 5 个英文字母,代表一天里的第 14 个钟头(于是一天的 0 点到 23 点由数字 0 到 9、以及大写字母A到N表示);后面两字符串第 1 对相同的英文字母s出现在第 4 个位置(从 0 开始计数)上,代表第 4 分钟。现给定两对字符串,请帮助福尔摩斯解码得到约会的

2024-05-13 20:26:37 266

原创 PAT乙级1013 数素数 c语言

令 Pi​ 表示第 i 个素数。现任给两个正整数 M≤N≤104,请输出 PM​ 到 PN​ 的所有素数。

2024-05-13 17:31:14 297

原创 PAT乙级1012 数字分类 c语言

每个输入包含 1 个测试用例。每个测试用例先给出一个不超过 1000 的正整数 N,随后给出 N 个不超过 1000 的待分类的正整数。对给定的 N 个正整数,按题目要求计算 A1​~A5​ 并在一行中顺序输出。数字间以空格分隔,但行末不得有多余空格。若分类之后某一类不存在数字,则在相应位置输出。

2024-05-13 16:41:43 165

原创 PAT乙级1010 一元多项式求导 c语言

设计函数求一元多项式的导数。(注:xn(n为整数)的一阶导数为nxn−1。

2024-05-13 15:06:54 110

原创 PAT乙级1009 说反话 c语言(字符串以回车结束)

给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出。

2024-05-13 14:02:59 118

原创 PAT乙级1008 数组元素循环右移问题 c语言

一个数组A中存有N(>0)个整数,在不允许使用另外数组的前提下,将每个整数循环向右移M(≥0)个位置,即将A中的数据由(A0​A1​⋯AN−1​)变换为(AN−M​⋯AN−1​A0​A1​⋯AN−M−1​)(最后M个数循环移至最前面的M个位置)。如果需要考虑程序移动数据的次数尽量少,要如何设计移动的方法?

2024-05-13 13:42:07 168

原创 PAT乙级1007 素数对猜想 c语言

让我们定义dn​为:dn​=pn+1​−pn​,其中pi​是第i个素数。显然有d1​=1,且对于n>1有dn​是偶数。“素数对猜想”认为“存在无穷多对相邻且差为2的素数”。现给定任意正整数N(

2024-05-13 13:11:30 126

原创 PAT乙级1006 换个格式输出整数 c语言

让我们用字母B来表示“百”、字母S表示“十”,用12...n来表示不为零的个位数字n(<10),换个格式来输出任一个不超过 3 位的正整数。例如234应该被输出为BBSSS1234,因为它有 2 个“百”、3 个“十”、以及个位的 4。

2024-05-12 22:44:50 129

原创 PAT乙级1005 继续(3n+1)猜想 c语言

卡拉兹(Callatz)猜想已经在1001中给出了描述。在这个题目里,情况稍微有些复杂。当我们验证卡拉兹猜想的时候,为了避免重复计算,可以记录下递推过程中遇到的每一个数。例如对 n=3 进行验证的时候,我们需要计算 3、5、8、4、2、1,则当我们对 n=5、8、4、2 进行验证的时候,就可以直接判定卡拉兹猜想的真伪,而不需要重复计算,因为这 4 个数已经在验证3的时候遇到过了,我们称 5、8、4、2 是被 3“覆盖”的数。

2024-05-12 22:13:25 286

原创 PAT乙级1004 成绩排名 c语言

读入 n(>0)名学生的姓名、学号、成绩,分别输出成绩最高和成绩最低学生的姓名和学号。

2024-05-12 21:29:43 347

原创 PAT乙级1002 写出这个数 c语言

读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字。

2024-05-11 16:17:54 159

原创 PAT乙级1003 我要通过!c语言

是自动判题系统给出的最令人欢喜的回复。本题属于 PAT 的“”大派送 —— 只要读入的字符串满足下列条件,系统就输出“”,否则输出“得到“PATxPATxxAaPbTcaPbATcaabcA现在就请你为 PAT 写一个自动裁判程序,判定哪些字符串是可以获得“”的。

2024-05-11 15:56:48 407 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除