<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Ningjing的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/wFlipped</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; wFlipped]]></copyright><item><title><![CDATA[Makefile文件]]></title><link>https://blog.youkuaiyun.com/wFlipped/article/details/123331540</link><guid>https://blog.youkuaiyun.com/wFlipped/article/details/123331540</guid><author>wFlipped</author><pubDate>Mon, 07 Mar 2022 15:36:15 +0800</pubDate><description><![CDATA[参考博客：https://blog.youkuaiyun.com/xiaonan153/article/details/81453560
一、 makefile的原理：
makefile定义了一系 列的规则来指定，哪些文件需要先编译，哪些文件需要后编译，哪些文件需要重新编译，甚至于进行更复杂的功能操作
makefile就像一个Shell 脚本一样，其中也可以执行操作系统的命令
makefile带来的好处就是——“自动化编译”，一旦写好，只需要一个make命令，整个工程完全自动编译，极大的提高了软件开发的效率
make是]]></description><category></category></item><item><title><![CDATA[C基础知识]]></title><link>https://blog.youkuaiyun.com/wFlipped/article/details/123306539</link><guid>https://blog.youkuaiyun.com/wFlipped/article/details/123306539</guid><author>wFlipped</author><pubDate>Sun, 06 Mar 2022 10:33:32 +0800</pubDate><description><![CDATA[栈区：存放函数形参，局部变量，返回值等，由编译器自行分配和释放
堆区：由程序员自行管理，申请和释放
数据区：
①全局/静态存储区：未初始化的全局变量和静态变量（.bss段）——只存储变量名；初始化的全局变量和静态变量（.data段）
②常量区
代码区（.txt段）：存放函数体等的二进制代码

如有错误，欢迎评论区，批评指正~

...]]></description><category></category></item><item><title><![CDATA[数据查重算法]]></title><link>https://blog.youkuaiyun.com/wFlipped/article/details/118070682</link><guid>https://blog.youkuaiyun.com/wFlipped/article/details/118070682</guid><author>wFlipped</author><pubDate>Sun, 20 Jun 2021 15:52:27 +0800</pubDate><description><![CDATA[题目：有1000个数据，其取值范围为1~2000,这1000个数据中有一个是重复的，请找出来。
一、位与
char arr[250];
for(int i=0;i&lt;1000;i++)
{
	int tmp=128; 
	int a=err[i];
	b=a/8;
	c=a%8;
	if(arr[b]&amp;(tmp&gt;&gt;c)
		return err[i];
	else
		arr[b]=arr[b]^(tmp&gt;&gt;c);
	
}

二、嵌套
int arr[1000]={0};]]></description><category></category></item><item><title><![CDATA[位运算之求一个数的二进制表示中1的个数]]></title><link>https://blog.youkuaiyun.com/wFlipped/article/details/117395215</link><guid>https://blog.youkuaiyun.com/wFlipped/article/details/117395215</guid><author>wFlipped</author><pubDate>Sun, 30 May 2021 10:27:35 +0800</pubDate><description><![CDATA[一、基本位运算
右移运算：按位右移，左补符号位
左移运算：按位左移，右补0位
针对某一位操作（此处1、0并非常数，而是对应需要变换的位置为1或0）：
得到1：x|1；
得到0：x&amp;0；
取反： x^1；
二、做题步骤
1.确定符号
2.确定数字
3.构造数字
eg：第k位由1变为0  x&amp;（~（1&lt;&lt;(k-1)）)
    右数第k位取反  x^(1&lt;&lt;(k-1))
    第k位由1变为0  x|(1&lt;&lt;(k-1))
    取末k位        x&]]></description><category></category></item><item><title><![CDATA[约瑟夫环的简单实现]]></title><link>https://blog.youkuaiyun.com/wFlipped/article/details/117394865</link><guid>https://blog.youkuaiyun.com/wFlipped/article/details/117394865</guid><author>wFlipped</author><pubDate>Sun, 30 May 2021 09:58:59 +0800</pubDate><description><![CDATA[一、题目
有n个人围成一圈，顺序排号。从第一个人开始报数（从1报到3），凡是报到3的退出圈子，问剩下的时原来第几号的那位。
二、解题思路
用数组下标代表原来顺序排号结果，以数组元素的值为标志位，初始均设为1，如果报到3，则置为0；用count，初始为元素总个数，出去一个进行count–，直至最后为0，游戏结束;用变量tmp作为报数器，为3时，将对应数组元素置为0，同时count–，tmp置为0，重新计数。
三、代码实现
#include&lt;stdio.h&gt;
#include&lt;stdlib.h]]></description><category></category></item><item><title><![CDATA[内存重叠问题]]></title><link>https://blog.youkuaiyun.com/wFlipped/article/details/117394603</link><guid>https://blog.youkuaiyun.com/wFlipped/article/details/117394603</guid><author>wFlipped</author><pubDate>Sun, 30 May 2021 09:45:19 +0800</pubDate><description><![CDATA[一、概述
上课老师以“将一个长度为n的数组的前m个元素移到后m位或将后m位元素移到前m位”，由于m的长度取值不同，则可能发生内存重叠；下去自己查阅了一些博客的详解，将所理解结果整理如下。

二、内存重叠
设des，source分别为目标地址和源地址，count为所要复制的元素长度；
两种情况：
flag1=des&lt;source&amp;&amp;des+count&gt;source;
flag2=des&gt;source&amp;&amp;source+count&lt;des;

三、解决方法
]]></description><category></category></item><item><title><![CDATA[带头结点的单链表实现冒泡排序]]></title><link>https://blog.youkuaiyun.com/wFlipped/article/details/111994825</link><guid>https://blog.youkuaiyun.com/wFlipped/article/details/111994825</guid><author>wFlipped</author><pubDate>Wed, 30 Dec 2020 17:16:38 +0800</pubDate><description><![CDATA[单链表实现整型数据冒泡排序
#include&lt;stdio.h&gt;
#include&lt;stdlib.h&gt;
typedef int ElemType;
typedef struct Node
{
	ElemType data;
	struct Node *next;
}LinkList;

//创建带头结点的单链表（尾插法）
LinkList * CreateList(int *arr,int length)  //通过数组来传递数据
{
	LinkList *p,*head=NULL,*]]></description><category></category></item><item><title><![CDATA[图书管理信息系统c语言]]></title><link>https://blog.youkuaiyun.com/wFlipped/article/details/108950981</link><guid>https://blog.youkuaiyun.com/wFlipped/article/details/108950981</guid><author>wFlipped</author><pubDate>Tue, 13 Oct 2020 14:37:56 +0800</pubDate><description><![CDATA[图书管理信息系统c语言
#include&lt;stdio.h&gt;
#include&lt;string.h&gt;
#include&lt;stdlib.h&gt;
struct Book_type
{
int num;                          //图书编号
char name[20];           //图书名称
char publisher[20];      //图书出版社
char author[20];         //图书作者
char position]]></description><category></category></item><item><title><![CDATA[利用指针，实现函数值的交换]]></title><link>https://blog.youkuaiyun.com/wFlipped/article/details/109049558</link><guid>https://blog.youkuaiyun.com/wFlipped/article/details/109049558</guid><author>wFlipped</author><pubDate>Tue, 13 Oct 2020 14:21:58 +0800</pubDate><description><![CDATA[定义一个Swap函数中，通过传递指针实现主函数两个数的数值交换
代码如下：
#include&lt;stdio.h&gt;
void Swap(int *p,int *q)
{
	int temp;
	temp=*p;
	*p=*q;
	*q=temp;
}
void main()
{
	int a,b;
	printf("请输入两个数:\n");
	scanf("%d%d",&amp;a,&amp;b);
	Swap(&amp;a,&amp;b);
	printf("交换后的顺序为：%d %d\n",a,]]></description><category></category></item></channel></rss>