当前位置: 首页 > news >正文

如何整理网站换网站后台

如何整理网站,换网站后台,做设计找参考的设计网站有那些,像淘客基地这样的网站如何做文章目录 一、数组名的理解#xff08;1#xff09;数组的地址与数组首元素地址的区别 二、使用指针访问数组#xff08;1#xff09;一维数组传参的本质 三、冒泡排序#xff08;1#xff09;什么是冒泡排序#xff08;2#xff09;写冒泡排序 四、结束语 一、数组名的… 文章目录 一、数组名的理解1数组的地址与数组首元素地址的区别 二、使用指针访问数组1一维数组传参的本质 三、冒泡排序1什么是冒泡排序2写冒泡排序 四、结束语 一、数组名的理解 首先回顾一下指针访问数组的内容 int arr[]{1,2,3,4,5,6,7,8,9}; int * paarr[0];//pa是指针变量这里一个arr[0]它是指数组首元素的地址但是数组名也是地址并且也是数组首元素的地址 我们可以做个简单的测试 #includestdio.h int main() {int arr[] { 1,2,3,4,5,6,7,8,9 };int* ps arr[0];printf(arr%p\n, arr);printf(arr[0]%p\n, arr[0]);return 0; }由运算结果就可以得出我们的结论数组名是首元素的地址。 有两个特例的地方 #includestdio.h #includestring.h int main() {int arr[] { 1,2,3,4,5,6,7,8,9 };int* pa arr[0];printf(%d, sizeof(arr));return 0; }输出的结果是36大家可能会想arr如果是地址的话在不同的环境下输出的结果会不同也就是在x86或者在x64的环境那应该输出4或者8才对。 对于上面的代码可能大家会有些不理解了其实这是arr的特殊情况之一。 sizeof(arr) : sizeof中单独放数组名这里的数组名表示整个数组计算的是整个数组的大小单位是字节。 #includestdio.h int main() {int arr[] { 1,2,3,4,5,6,7,8,9 };int* pa arr[0];printf(%p\n, arr);return 0; }这里的**数组名**这里是的数组名表示的是整个数组取出的是整个数组的地址整个数组的地址与首元素的地址是有区别的可以1试试看结果不同。 除此之外任何地方使用数组名数组名都表示首元素的地址。 1数组的地址与数组首元素地址的区别 #includestdio.h int main() {int str[] { 1,2,3,4,5,6,7,8,9,10 };printf(str[0] %p\n, str[0]);printf(str[0]1 %p\n, str[0]1);printf(str %p\n, str);printf(str1 %p\n, str1);return 0; }这里的str[0]1就是跳过⼀个元素。 但是str和str1相差40个字节这就是因为str是数组的地址1操作是跳过整个数组的。 二、使用指针访问数组 例子我们写一个代码来输出数组要求要使用到指针 #includestdio.h void V_copy(int* str, int len) {for (int i 0; i len; i){printf(%d , *str);str;}printf(\n); } int main() {int str[] { 2,4,5,6,1,7,4,9,3,0,8 };int* pa str[0];int len sizeof(str) / sizeof(str[0]);V_copy(str, len);return 0; }printf(%d , *str);str;我们可以把这里改写成printf“%d”,*(stri 的形式本质上和上面的那个形式是一样的。 将*(stri)换成str[i]也是能够正常打印的所以本质上str[i]是等价于*(stri)。 如果我们想要有自己的输入那么我们可以加上下面的代码 for (int i 0; i len; i) {scanf(%d, pa i); }我们最后的代码也可以写成下面的形式 #includestdio.h int main() {int str[10] { 0 };int* pa str[0];int len sizeof(str) / sizeof(str[0]);for (int i 0; i len; i){scanf(%d, pa i);}for (int i 0; i len; i){printf(%d , *(pa i));}return 0; }1一维数组传参的本质 #includestdio.h void Print(int arr[]) {int len1 sizeof(arr) / sizeof(arr[0]);int sz2 len1;printf(sz2%d\n, sz2);} int main() {int arr[] { 1,1,2,3,4,5,6,7,8,9 };int len sizeof(arr) / sizeof(arr[0]);int sz len;printf(sz%d\n, sz);Print(arr);return 0; }由结果我们可以发现函数的内部并没有得到正确的数组元素个数。 由上面 的知识我们可以知道数组名是数组首元素的地址数组传参我们传递的是数组名也就 是说本质上数组传参传递的是数组首元素的地址。 函数参数本质上是指针所以函数内部没办法求数组元素的个数。 所以这里的 void Print(int arr[])我们可以改写成void Print(int*arr)这个是指针的形式 三、冒泡排序 1什么是冒泡排序 冒泡排序就是指相邻的两个数作比较根据你想要的结果最后输出比如我想要输出135278649这几个数字的升序那么我们就需要先1很3比较3大于1所以3和1的位置不交换再3和5比较5是大于3的也不交换再2和5 比较5大于25应该在2的后面所以5和2比较以此类推当第一次轮完后也就是知道最后一个数字是9之后我们再来第二次的比较此时数字9的位置不再改变因为它就是最大的且位于这个数组的最后一个位置。 2写冒泡排序 #includestdio.h void Button_c(int *str, int len) {for (int i 0; i len - 1; i){for (int j 0; j len - 1 - i; j){if (*(strj) *(str j1)){int tem *(strj);*(strj) *(str j1);*(str j1) tem;}}}} void print(int* str, int len) {for (int i 0; i len; i){printf(%d , *(str i));} } int main() {int str[10] { 1,4,2,3,7,5,6,8,9,10 };int len sizeof(str) / sizeof(str[0]);Button_c(str, len);print(str,len);return 0; }上面的代码可以输出我们想要的结果感觉编译器进行比较的次数有点多因为它会反复比较即使位置是符合升序的数字这就是上面代码的弊端。 所以我们简单的进行一些优化设一个变量flage,假设flage1表示这相邻的两个数符合升序不需要交换如果相邻的两个数进行了交换那我们就可以改变flage的值可以让它被赋值为0因此我们可以进行以下操作 #includestdio.h void Button_c(int* str, int len) {for (int i 0; i len - 1; i){int flage 1;for (int j 0; j len - 1 - i; j){if (*(str j) *(str j 1)){int tem *(str j);*(str j) *(str j 1);*(str j 1) tem;flage 0;}}if (flage 1){break;}} } void print(int* str, int len) {for (int i 0; i len; i){printf(%d , *(str i));} } int main() {int str[10] { 1,4,2,3,7,5,6,8,9,10 };int len sizeof(str) / sizeof(str[0]);Button_c(str, len);print(str, len);return 0; }四、结束语 关于冒泡排序就到这里了后续我会继续写关于冒泡排序的改进版本。 大家不理解的地方可以自己再反复看看或者查查资料希望可以和大家一起进步
http://www.zqtcl.cn/news/336646/

相关文章:

  • wordpress图片后加载外链seo服务
  • 婚庆公司网站建设腾讯广告建站工具
  • 焦作建设厅网站wordpress调用视频播放器
  • 网站版面做好江苏省建设工程设计施工图审核中心网站
  • 智能网站平台wordpress同步头条
  • 做采集的网站有流量吗广州建设学校
  • 建设部网站公告外贸网站建设定制
  • 如何搭建 seo网站上海市住房与城乡建设部网站
  • 百度搜不到自己的网站python云服务器网站开发实例
  • 给企业做网站的业务员优书网没了
  • 江门网站建设方案外包洛阳网站设计哪家专业
  • 电暖怎么做网站办公室平面设计图
  • 全屏网站 功能丽水市企业网站建设 微信营销 影视拍摄
  • 天天爱天天做视频网站网站推送
  • 制作企业网站与app有什么不同化工企业网站建设
  • 东莞企业推广网站专门做黄漫的网站
  • 温州网站关键词排名优化win10 电脑做网站服务器
  • 网站设计规划信息技术教案营销模式和营销策略
  • 太仓住房城乡建设网站微信怎么注册
  • 德骏网站建设重庆企业网站如何推广
  • 路由器做内部网站服务器石家庄新闻综合频道在线直播回放
  • 怎么给网站备案亚马逊网站建设与维护方法分析
  • 金华网站建设团队产品网络推广方案范文
  • 拼多多刷单网站开发虚拟机可以做两个网站
  • wordpress安装路径和站点地址的设置信通网站开发中心
  • 柳州公司网站建设网站服务商
  • 智能建站实验报告成功营销网站
  • 基于jsp的网站开发开题报告青海公路工程建设市场信用信息服务网站
  • 做网站页面的软件wordpress如何开启page页面评论
  • 做网站最简单的长春财经学院