<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Prison__Break的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Prison__Break</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Prison__Break]]></copyright><item><title><![CDATA[汉诺塔详解]]></title><link>https://blog.youkuaiyun.com/Prison__Break/article/details/109665022</link><guid>https://blog.youkuaiyun.com/Prison__Break/article/details/109665022</guid><author>Prison__Break</author><pubDate>Fri, 13 Nov 2020 00:47:01 +0800</pubDate><description><![CDATA[我在做汉诺塔的时候，注意力不能集中，就是因为递归里面的项写不出来。
原因其实是如：hanoi(A,C,B)指的是第一个盘子，第三个盘子，第二个盘子，相对于主函数hanio(charA, char B,char C),就是将第一个盘子指定为A盘的位置，第二个盘子指定为C盘的位置，第三个盘子指定为B盘的位置。
里面hanio(2,A,C,B)的子递归位置为(A,C,B)，所以排序为hanio(1,A,B,C)；另一个子递归同理可得，希望能帮助到您。

...]]></description><category></category></item><item><title><![CDATA[僵死进程]]></title><link>https://blog.youkuaiyun.com/Prison__Break/article/details/107940846</link><guid>https://blog.youkuaiyun.com/Prison__Break/article/details/107940846</guid><author>Prison__Break</author><pubDate>Tue, 11 Aug 2020 17:51:48 +0800</pubDate><description><![CDATA[僵死进程的产生与避免
&amp;怎样产生僵尸进程

一个进程在调用exit命令结束自己的生命的时候，其实它并没有真正的被销毁，而是留下一个称为僵尸进程（Zombie）的数据结构（系统调用exit， 它的作用是使进程退出，但也仅仅限于将一个正常的进程变成一个僵尸进程，并不能将其完全销毁）。在Linux进程的状态中，僵尸进程是非常特殊的一种，它已经放弃了几乎所有内存空间，没有任何可执行代码，也不能被调度，仅仅在进程列表中保留一个位 置，记载该进程的退出状态等信息供其他进程收集。
除此之外，僵尸进程不再占有任何内]]></description><category></category></item><item><title><![CDATA[有名管道与无名管道的区别]]></title><link>https://blog.youkuaiyun.com/Prison__Break/article/details/107940633</link><guid>https://blog.youkuaiyun.com/Prison__Break/article/details/107940633</guid><author>Prison__Break</author><pubDate>Tue, 11 Aug 2020 17:37:35 +0800</pubDate><description><![CDATA[有名管道与无名管道的区别
无名管道:管道是半双工的，数据只能向一个方向流动；需要双方通信时，需要建立起两个管道；只能用于父子进程或者兄弟进程之间（具有亲缘关系的进程）。
单独构成一种独立的文件系统：管道对于管道两端的进程而言，就是一个文件，但它不是普通的文件，它不属于某种文件系统，而是自立门户，单独构成一种文件系统，并且只存在与内存中。
有名管道：不同于管道之处在于它提供一个路径名与之关联，以FIFO的文件形式存在于文件系统中。这样，即使与FIFO的创建进程不存在亲缘关系的进程，只要可以访问该路径，就能够彼]]></description><category></category></item><item><title><![CDATA[递归采用栈的方法]]></title><link>https://blog.youkuaiyun.com/Prison__Break/article/details/102889471</link><guid>https://blog.youkuaiyun.com/Prison__Break/article/details/102889471</guid><author>Prison__Break</author><pubDate>Mon, 04 Nov 2019 00:36:59 +0800</pubDate><description><![CDATA[递归：一层一层套入，采用栈独特的结构先进后出。从5-&gt;4-&gt;3-&gt;2-&gt;1. 得到n=1然后将10给到n=2，再给到n=3，然后给到n=4，最后给到n=5。通过栈层层出来。

...]]></description><category></category></item><item><title><![CDATA[scanf来代替gets]]></title><link>https://blog.youkuaiyun.com/Prison__Break/article/details/102847429</link><guid>https://blog.youkuaiyun.com/Prison__Break/article/details/102847429</guid><author>Prison__Break</author><pubDate>Thu, 31 Oct 2019 22:50:21 +0800</pubDate><description><![CDATA[// %[]可以用来进行多个字符的输入,并对结束符进行自定义。
// 对于%[]还可以用^+任意字符(包括 ABC)来结束字符串的输入。
// 比如%[^stop]就是直到有stop 输入,字符串才中止。![在这里插入图片描述](https://img-blog.csdnimg.cn/20191031224720369.png

#include &lt;stdio.h&gt;
void main...]]></description><category></category></item><item><title><![CDATA[杨辉三角求解]]></title><link>https://blog.youkuaiyun.com/Prison__Break/article/details/102781788</link><guid>https://blog.youkuaiyun.com/Prison__Break/article/details/102781788</guid><author>Prison__Break</author><pubDate>Mon, 28 Oct 2019 15:22:31 +0800</pubDate><description><![CDATA[#include&lt;stdio.h&gt;
void PascalTriangle()
{
    #define ROW 10
 int arr[ROW][ROW];
 for(int i=0;i&lt;ROW;i++)
 {
  for(int j=0;j&lt;=i;j++)
  {
   if(j==0 || i==j)
   {
    arr[i][j] = 1;
   }
   ...]]></description><category></category></item><item><title><![CDATA[一维数组和二维数组]]></title><link>https://blog.youkuaiyun.com/Prison__Break/article/details/102773614</link><guid>https://blog.youkuaiyun.com/Prison__Break/article/details/102773614</guid><author>Prison__Break</author><pubDate>Sun, 27 Oct 2019 23:36:02 +0800</pubDate><description><![CDATA[一维数组
int arr[4];
arr：  指的是数组首地址
arr+1 ：地址+1
arr[0]： 首地址的值
arr[0]+1 ：地址+1的值
二维数组
int brr[3][4]
由于二维数组是以行行优先，所以将每行的值“打包”成一个整体。
brr： 二维数组首地址
brr+1：下一行首地址
brr[0]: 第一行数组的首地址
brr[0]+1 :第一行数组首地址+1
brr[0][0]:...]]></description><category></category></item><item><title><![CDATA[Swap用指针交换两个数]]></title><link>https://blog.youkuaiyun.com/Prison__Break/article/details/102674725</link><guid>https://blog.youkuaiyun.com/Prison__Break/article/details/102674725</guid><author>Prison__Break</author><pubDate>Tue, 22 Oct 2019 00:48:09 +0800</pubDate><description><![CDATA[void Swap(int *p1,int *p2)//ok
{
 int tmp ;
 tmp = *p1;
 *p1 = *p2;
 *p2 = tmp;
}
int main()
{
 int a = 10;
 int b = 20;
 printf("%d,%d\n",a,b);
 Swap(&amp;a,&amp;b);
 printf("%d,%d\n",a,b);
}

总结:子函数...]]></description><category></category></item><item><title><![CDATA[用“选择法”对10个整数排序]]></title><link>https://blog.youkuaiyun.com/Prison__Break/article/details/102664762</link><guid>https://blog.youkuaiyun.com/Prison__Break/article/details/102664762</guid><author>Prison__Break</author><pubDate>Mon, 21 Oct 2019 15:33:30 +0800</pubDate><description><![CDATA[int main()
{
 int i,j,tmp,a[10];
 scanf("%d,%d,%d,%d,%d,%d,%d,%d,%d,%d",&amp;a[1],&amp;a[2],&amp;a[3],&amp;a[4],&amp;a[5],&amp;a[6],&amp;a[7],&amp;a[8],&amp;a[9],&amp;a[10]);//先输入10个数
 printf("\n");
 ...]]></description><category></category></item><item><title><![CDATA[用“筛选法”求100以内素数]]></title><link>https://blog.youkuaiyun.com/Prison__Break/article/details/102664052</link><guid>https://blog.youkuaiyun.com/Prison__Break/article/details/102664052</guid><author>Prison__Break</author><pubDate>Mon, 21 Oct 2019 15:15:09 +0800</pubDate><description><![CDATA[int main()
{
 int i,j,n,a[101];//为了使数和下标一一对应
 for(i=1;i&lt;=100;i++)
 {
  a[i]=i;
  a[1]=0;
 }
  for(i=2;i&lt;sqrt(1.0*100);i++)
  {
   for(j=i+1;j&lt;=100;j++)
   {
    if(a[i]!=0 &amp;&amp; a[j]!=0)...]]></description><category></category></item><item><title><![CDATA[辗转相除法求最大公约数]]></title><link>https://blog.youkuaiyun.com/Prison__Break/article/details/102648642</link><guid>https://blog.youkuaiyun.com/Prison__Break/article/details/102648642</guid><author>Prison__Break</author><pubDate>Sun, 20 Oct 2019 14:27:05 +0800</pubDate><description><![CDATA[int Max(int m,int n)
{
 int r;
 scanf("%d,%d",&amp;m,&amp;n);
 while((r=m%n)!=0)
 {
  m=n;
  n=r;
 }
 printf("%d\n",n);
}
主要思想：用较大数除以较少数，用出现的余数（第一次余数）去除除数。
再用出现的余数（第二次余数）去除本式的除数，以此类推，直到最后余数为0。
那么最后一次除...]]></description><category></category></item><item><title><![CDATA[斐波那契数列]]></title><link>https://blog.youkuaiyun.com/Prison__Break/article/details/102648549</link><guid>https://blog.youkuaiyun.com/Prison__Break/article/details/102648549</guid><author>Prison__Break</author><pubDate>Sun, 20 Oct 2019 14:15:20 +0800</pubDate><description><![CDATA[int Fibon(int n)
{
 int f1 = 1;
 int f2 = 1;
 int f3 = 2;
 for(int i=2;i&lt;n;i++)
 {
  f3 = f1 +f2;
  f1 = f2;
  f2 =f3;
 }
 return f3;
}

主要思想：将斐波那契数列想象成按顺序排列的三个空，通过前两个数，得出第三个，再将后两个空按顺序放置第一第二空位置，以此类...]]></description><category></category></item><item><title><![CDATA[几进制的判断]]></title><link>https://blog.youkuaiyun.com/Prison__Break/article/details/102596209</link><guid>https://blog.youkuaiyun.com/Prison__Break/article/details/102596209</guid><author>Prison__Break</author><pubDate>Wed, 16 Oct 2019 23:32:08 +0800</pubDate><description><![CDATA[16.假设在n进制下，下面的等式成立，567*456=150216，n的值为？
A. 9          B. 10        C.12          D.18
遇到这类难题时，不论几进制。
1.首先我们先写出通式
567456 = (5n^2 +6n+7) * (4n^2 +5n+6)          ;             150216 = n^5 + 5n^4 + 2n^2+...]]></description><category></category></item><item><title><![CDATA[随意给出一个整数，要求：1.求出它的位数 2.逆序输出每位数字 3.顺序输出每位数字]]></title><link>https://blog.youkuaiyun.com/Prison__Break/article/details/102490427</link><guid>https://blog.youkuaiyun.com/Prison__Break/article/details/102490427</guid><author>Prison__Break</author><pubDate>Thu, 10 Oct 2019 20:58:31 +0800</pubDate><description><![CDATA[1 先求这个数的位数
1234       /10        123  （1）
123          /10         12        （2）
12           /10         1     （3）
1            /10         0     （4）

人都是通过掰10个手指来运算数的位数
生活中大部分的数都是10进制
由此得出了通过将整数10整除...]]></description><category></category></item></channel></rss>