<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Orzient的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Orzient</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Orzient]]></copyright><item><title><![CDATA[基于Dijkstra算法的最短路径搜索的编程实现]]></title><link>https://blog.youkuaiyun.com/Orzient/article/details/135491008</link><guid>https://blog.youkuaiyun.com/Orzient/article/details/135491008</guid><author>Orzient</author><pubDate>Tue, 09 Jan 2024 22:07:16 +0800</pubDate><description><![CDATA[注意到源结点“1”到结点“4”有两条路径，一条直达路径距离dist[1,4]=3，另一条经由结点“2”的距离dist[1,2]+w24=2，故将dist[1,4]更新为最短距离2。比较后可见，源点“1”经由结点“2”到结点”3”, ”4”, ”6”的距离小于旧路径的距离，故更新其距离，同时改变父结点为结点“2”;并设一单源点s∈V。选择源结点“1”，将1加入S1，源结点“1”到“2”距离(dist[1,2])最短为1，故将结点“2”加入S，成为新的S2[3]。所有的结点都已加入集合S，即V=S，迭代结束。]]></description><category></category></item><item><title><![CDATA[拓扑控制算法的编程实现——以RNG与GG算法为例]]></title><link>https://blog.youkuaiyun.com/Orzient/article/details/135490579</link><guid>https://blog.youkuaiyun.com/Orzient/article/details/135490579</guid><author>Orzient</author><pubDate>Tue, 09 Jan 2024 21:57:54 +0800</pubDate><description><![CDATA[GG 算法整体流程与RNG算法相同，我们只需将RNG算法代码中的判别条件”elseif(norm(u-v)>max(norm(u-w),norm(v-w)))”替换为”elseif((norm(u-v))^2>=(norm(u-w))^2+(norm(v-w))^2)”，则得到了GG算法。RNG图和GG图是全图的子集，RNG图是GG图的子集。给定已知结点位置的结点集合，则u与v之间存在链路(u,v)的必要条件是对于任意位置的结点w，u与v的链路距离d(u,v)小于或等于u和v中任一结点与w的链路距离。]]></description><category></category></item><item><title><![CDATA[关于stm32F103VE 系统复位(看门狗复位)无效问题的解决]]></title><link>https://blog.youkuaiyun.com/Orzient/article/details/127722898</link><guid>https://blog.youkuaiyun.com/Orzient/article/details/127722898</guid><author>Orzient</author><pubDate>Sun, 06 Nov 2022 22:51:34 +0800</pubDate><description><![CDATA[发现问题：在使用野火家的stm32103VE板进行关于看门狗的开发学习过程中发现本应出现的复位效果没有出现。

原因分析：复位电路中的NRST被连接到另一复位芯片电路中导致系统复位无效。

解决方法：断开与开发版相连接的(DAP)下载器即可解决问题。
]]></description><category></category></item><item><title><![CDATA[关于STM32的寄存器位操作《^=异或篇》(按键检测 LED反转 宏定义下的Toggle 结构体指针 偏移地址)]]></title><link>https://blog.youkuaiyun.com/Orzient/article/details/127451769</link><guid>https://blog.youkuaiyun.com/Orzient/article/details/127451769</guid><author>Orzient</author><pubDate>Fri, 21 Oct 2022 21:08:19 +0800</pubDate><description><![CDATA[关于STM32的寄存器位操作《^=异或篇》
以#define Toggle(p,i) {p->ODR ^=i;} 实现LED灯的反转为例]]></description><category></category></item><item><title><![CDATA[【PTA】客观题11]]></title><link>https://blog.youkuaiyun.com/Orzient/article/details/122097339</link><guid>https://blog.youkuaiyun.com/Orzient/article/details/122097339</guid><author>Orzient</author><pubDate>Wed, 22 Dec 2021 23:24:46 +0800</pubDate><description><![CDATA[1-1

直接访问就是直接利用变量的地址直接进行访问。

直接访问：按照C的方式，如果定义一个变量，系统会给这个变量分配一块内存，变量有两个属性，变量值和变量地址。变量地址指示了该变量在内存中的存储位置，变量值是这块内存中的内容。要访问这块内存空间上的内容，可以直接使用变量名。

间接访问：间接访问的含义是先从其它内存空间获得要访问的内存地址，根据得到的地址访问目的地址。

(1分)



T



F




1-2

结构体成员的类型必须是基本数据类型。

可以是指针、结构体，可以是指向自己的结构体的指]]></description><category></category></item><item><title><![CDATA[【PTA】客观题8]]></title><link>https://blog.youkuaiyun.com/Orzient/article/details/122096435</link><guid>https://blog.youkuaiyun.com/Orzient/article/details/122096435</guid><author>Orzient</author><pubDate>Wed, 22 Dec 2021 22:24:08 +0800</pubDate><description><![CDATA[R1-1

C程序从源文件中的第一条语句开始执行。

(1分)



T



F




R1-2

如果变量声明为 int n；当n的绝对值大于1时，表达式1/n的值始终等于0。

(1分)



T



F




R1-3

数组可以存储许多不同类型的值。

(1分)



T



F




R1-4

包含 &amp;&amp; 运算符的一个为true或两个操作数都为true，则该表达式为true。

(1分)



T



F




R1-5

如果局部变量没有初始值，则该值是不确定的]]></description><category></category></item><item><title><![CDATA[【PTA】客观题 NO.8]]></title><link>https://blog.youkuaiyun.com/Orzient/article/details/122046137</link><guid>https://blog.youkuaiyun.com/Orzient/article/details/122046137</guid><author>Orzient</author><pubDate>Mon, 20 Dec 2021 17:23:17 +0800</pubDate><description><![CDATA[1-1

如果函数定义出现在函数调用之前，可以不必加函数原型声明。

(1分)



T



F

1-2

局部变量如果没有指定初值，则其初值不确定。

(1分)



T



F

1-3

在一个函数内部调用另一个函数的调用方式称为嵌套调用。

(1分)



T



F



1-4

静态变量的作用域是整个文件。

1、 Static类内部变量

二者作用域相同：同auto自动变量（即未加 Static 声明的局部变量）一样，是某个特定函数的局部变量，即只能在定义该变量的函数内使用该变量
	]]></description><category></category></item><item><title><![CDATA[【PTA】求矩阵中的逆鞍点]]></title><link>https://blog.youkuaiyun.com/Orzient/article/details/122021496</link><guid>https://blog.youkuaiyun.com/Orzient/article/details/122021496</guid><author>Orzient</author><pubDate>Sun, 19 Dec 2021 11:10:37 +0800</pubDate><description><![CDATA[求出n×m二维整数数组中的所有逆鞍点。这里的逆鞍点是指在其所在的行上最大，在其所在的列上最小的元素。若存在逆鞍点，则输出所有逆鞍点的值及其对应的行、列下标。若不存在逆鞍点，则输出“Not”。要求至少使用一个自定义函数。

输入格式:

测试数据有多组，处理到文件尾。每组测试的第一行输入n和m（都不大于100），第二行开始的n行每行输入m个整数。

输出格式:

对于每组测试，若存在逆鞍点，则按行号从小到大、同一行内按列号从小到大的顺序逐行输出每个逆鞍点的值和对应的行、列下标，每两个数据之间一个空格；若不存在]]></description><category></category></item><item><title><![CDATA[【PTA】大笨钟的心情]]></title><link>https://blog.youkuaiyun.com/Orzient/article/details/122020575</link><guid>https://blog.youkuaiyun.com/Orzient/article/details/122020575</guid><author>Orzient</author><pubDate>Sun, 19 Dec 2021 09:35:34 +0800</pubDate><description><![CDATA[有网友问：未来还会有更多大笨钟题吗？笨钟回复说：看心情……

本题就请你替大笨钟写一个程序，根据心情自动输出回答。

输入格式：

输入在一行中给出 24 个 [0, 100] 区间内的整数，依次代表大笨钟在一天 24 小时中，每个小时的心情指数。

随后若干行，每行给出一个 [0, 23] 之间的整数，代表网友询问笨钟这个问题的时间点。当出现非法的时间点时，表示输入结束，这个非法输入不要处理。题目保证至少有 1 次询问。

输出格式：

对每一次提问，如果当时笨钟的心情指数大于 50，就在一行中输出心情.]]></description><category></category></item><item><title><![CDATA[【PTA】判断回文字符串]]></title><link>https://blog.youkuaiyun.com/Orzient/article/details/122012216</link><guid>https://blog.youkuaiyun.com/Orzient/article/details/122012216</guid><author>Orzient</author><pubDate>Sat, 18 Dec 2021 14:52:07 +0800</pubDate><description><![CDATA[本题要求编写函数，判断给定的一串字符是否为“回文”。所谓“回文”是指顺读和倒读都一样的字符串。如“XYZYX”和“xyzzyx”都是回文。

函数接口定义：


bool palindrome( char *s );

函数palindrome判断输入字符串char *s是否为回文。若是则返回true，否则返回false。

裁判测试程序样例：


#include &lt;stdio.h&gt;
#include &lt;string.h&gt;

#define MAXN 20
typedef enum]]></description><category></category></item><item><title><![CDATA[【PTA】报数]]></title><link>https://blog.youkuaiyun.com/Orzient/article/details/122010915</link><guid>https://blog.youkuaiyun.com/Orzient/article/details/122010915</guid><author>Orzient</author><pubDate>Sat, 18 Dec 2021 12:53:31 +0800</pubDate><description><![CDATA[报数游戏是这样的：有n个人围成一圈，按顺序从1到n编好号。从第一个人开始报数，报到m（&lt;n）的人退出圈子；下一个人从1开始报数，报到m的人退出圈子。如此下去，直到留下最后一个人。

本题要求编写函数，给出每个人的退出顺序编号。

函数接口定义：


void CountOff( int n, int m, int out[] );

其中n是初始人数；m是游戏规定的退出位次（保证为小于n的正整数）。函数CountOff将每个人的退出顺序编号存在数组out[]中。因为C语言数组下标是从0开始的，所以第i]]></description><category></category></item><item><title><![CDATA[【PTA】客观题NO.9]]></title><link>https://blog.youkuaiyun.com/Orzient/article/details/122007699</link><guid>https://blog.youkuaiyun.com/Orzient/article/details/122007699</guid><author>Orzient</author><pubDate>Sat, 18 Dec 2021 01:06:48 +0800</pubDate><description><![CDATA[1-1

如果strcmp(s1,s2)返回的结果为0，表示字符串s1和s2不相同。

语法/原型：


int strcmp(const char* stri1，const char* str2);


参数 str1 和 str2 是参与比较的两个字符串。strcmp() 会根据 ASCII 编码依次比较 str1 和 str2 的每一个字符，直到出现不同的字符，或者到达字符串末尾（遇见\0）。返回值：

如果返回值 &lt; 0，则表示 str1 小于 str2。
	如果返回值 &gt; 0，则表示 ]]></description><category></category></item><item><title><![CDATA[【PTA】客观题（NO.10）]]></title><link>https://blog.youkuaiyun.com/Orzient/article/details/122003532</link><guid>https://blog.youkuaiyun.com/Orzient/article/details/122003532</guid><author>Orzient</author><pubDate>Fri, 17 Dec 2021 19:25:10 +0800</pubDate><description><![CDATA[1-2

当用户要求输入的字符串中含有空格时,应使用的输入函数是gets()。

(1分)



T



F

作者

李克峰

单位

山东交通学院

1-2

答案正确

(1 分)




1-3

数组名就是一个指针常量，指向数组的首元素（或者说代表了数组的首地址）。

(1分)

数组名和指针的区别（数组名不是指针，是数组首地址）

T



F

作者

周强

单位

青岛大学

1-3

答案正确

(1 分)




1-4

指向数组元素的指针只可指向数组的首元素。

(1分)


.]]></description><category></category></item><item><title><![CDATA[【PTA】简易连连看]]></title><link>https://blog.youkuaiyun.com/Orzient/article/details/122003459</link><guid>https://blog.youkuaiyun.com/Orzient/article/details/122003459</guid><author>Orzient</author><pubDate>Fri, 17 Dec 2021 19:18:53 +0800</pubDate><description><![CDATA[本题要求实现一个简易连连看游戏模拟程序。

给定一个2N×2N的方阵网格游戏盘面，每个格子中放置一些符号。这些符号一定是成对出现的，同一个符号可能不止一对。程序读入玩家给出的一对位置(x1​,y1​)、(x2​,y2​)，判断这两个位置上的符号是否匹配。如果匹配成功，则将两个符号消为“*”并输出消去后的盘面；否则输出“Uh-oh”。若匹配错误达到3次，则输出“Game Over”并结束游戏。或者当全部符号匹配成功，则输出“Congratulations!”，然后结束游戏。

输入格式：

输入在一行中给一个]]></description><category></category></item><item><title><![CDATA[【PTA】检查密码 (10 分)]]></title><link>https://blog.youkuaiyun.com/Orzient/article/details/122001695</link><guid>https://blog.youkuaiyun.com/Orzient/article/details/122001695</guid><author>Orzient</author><pubDate>Fri, 17 Dec 2021 17:54:42 +0800</pubDate><description><![CDATA[本题要求你帮助某网站的用户注册模块写一个密码合法性检查的小功能。该网站要求用户设置的密码必须由不少于6个字符组成，并且只能有英文字母、数字和小数点.，还必须既有字母也有数字。

输入格式：

输入第一行给出一个正整数 N（≤100），随后 N 行，每行给出一个用户设置的密码，为不超过 80 个字符的非空字符串，以回车结束。

注意：题目保证不存在只有小数点的输入。

输出格式：

对每个用户的密码，在一行中输出系统反馈信息，分以下5种：

如果密码合法，输出Your password is wan m...]]></description><category></category></item><item><title><![CDATA[【PTA】字符串排序]]></title><link>https://blog.youkuaiyun.com/Orzient/article/details/121972446</link><guid>https://blog.youkuaiyun.com/Orzient/article/details/121972446</guid><author>Orzient</author><pubDate>Thu, 16 Dec 2021 13:18:18 +0800</pubDate><description><![CDATA[本题要求编写程序，读入5个字符串，按由小到大的顺序输出。

输入格式：

输入为由空格分隔的5个非空字符串，每个字符串不包括空格、制表符、换行符等空白字符，长度小于80。

输出格式：

按照以下格式输出排序后的结果：


After sorted:
每行一个字符串

输入样例：


red yellow blue black white

输出样例：


After sorted:
black
blue
red
white
yellow


#include&lt;stdio.h&gt;
#include]]></description><category></category></item><item><title><![CDATA[【PTA】实现A-B]]></title><link>https://blog.youkuaiyun.com/Orzient/article/details/121972390</link><guid>https://blog.youkuaiyun.com/Orzient/article/details/121972390</guid><author>Orzient</author><pubDate>Thu, 16 Dec 2021 13:16:16 +0800</pubDate><description><![CDATA[本题要求你计算A−B。不过麻烦的是，A和B都是字符串 —— 即从字符串A中把字符串B所包含的字符全删掉，剩下的字符组成的就是字符串A−B。

输入格式：

输入在2行中先后给出字符串A和B。两字符串的长度都不超过104，并且保证每个字符串都是由可见的ASCII码和空白字符组成，最后以换行符结束。

输出格式：

在一行中打印出A−B的结果字符串。

输入样例：


I love GPLT!  It's a fun game!
aeiou

输出样例：


I lv GPLT!  It's  fn gm!

]]></description><category></category></item><item><title><![CDATA[对输入的数字进行选择排序和冒泡排序（升序）]]></title><link>https://blog.youkuaiyun.com/Orzient/article/details/121958626</link><guid>https://blog.youkuaiyun.com/Orzient/article/details/121958626</guid><author>Orzient</author><pubDate>Wed, 15 Dec 2021 18:17:41 +0800</pubDate><description><![CDATA[#include &lt;stdio.h&gt;
#define SIZE 20

void x_sort(int num[], int len);
int main()
{

	int num[SIZE];
	int len;
	int i;

	scanf_s("%d",&amp; len);
	for ( i = 0; i &lt; len; i++)
		scanf_s("%d", &amp;num[i]);
	x_sort(num, len);
	for (i = 0; i &lt; len; .]]></description><category></category></item></channel></rss>