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

上传网站到google连云港建网站公司

上传网站到google,连云港建网站公司,佛山互联网公司,php企业网站demo大家好啊#xff0c;我是小象٩(๑ω๑)۶ 我的博客#xff1a;Xiao Xiangζั͡ޓއއ 很高兴见到大家#xff0c;希望能够和大家一起交流学习#xff0c;共同进步。 今天我们继续来复习指针… 目录 一、看一段代码二、 一维数组传参的本质三、冒泡排序3.1 基本思想四、二… 大家好啊我是小象٩(๑òωó๑)۶ 我的博客Xiao Xiangζั͡ޓއއ 很高兴见到大家希望能够和大家一起交流学习共同进步。 今天我们继续来复习指针… 目录 一、看一段代码二、 一维数组传参的本质三、冒泡排序3.1 基本思想四、二级指针4.1 基本概念 五、指针数组1 指针数组的定义 七、结尾 一、看一段代码 23 --32 arr[i] -- *(arri) i[arr] -- *(iarr)int main() {int arr[10] { 1,2,3,4,5,6,7,8,9,10 };//打印数组的内容使用指针int* p arr;int sz sizeof(arr) / sizeof(arr[0]);int i 0;//输出数组的内容//arr[i] -- *(arri)////[]就是一个操作符而已//for (i 0; i sz; i){//printf(%d , i[arr]);////printf(%d , i[p]);//?//printf(%d , *(i p));//printf(%d , p[i]);//*(pi) p[i]//*(pi) p[i] --- *(ip) i[p]//printf(%d , *(pi));}return 0; }本质 arr[i] -- *(arri) 二、 一维数组传参的本质 在 C 语言中一维数组传参的本质是传递数组首元素的地址而非整个数组的副本。 数组我们学过了之前也讲了数组是可以传递给函数的我们讨论 一下数组传参的本质。 首先从一个问题开始我们之前都是在函数外部计算数组的元素个数那我们可以把数组传给一个数后函数内部求数组的元素个数吗 #include stdio.h void test(int arr[]) {int sz2 sizeof(arr) / sizeof(arr[0]);printf(sz2 %d\n, sz2); } int main() {int arr[10] { 1,2,3,4,5,6,7,8,9,10 };int sz1 sizeof(arr) / sizeof(arr[0]);printf(sz1 %d\n, sz1);test(arr);return 0; } 通过结果我们发现在函数内部是没有正确获得数组的元素个数。 我们知道数组名是数组首元素的地址那么在数组传参的时候传递的是数组名也就是说本质上数组传参传递的是数组首元素的地址。 所以函数形参的部分理论上应该使用指针变量来接收元素的地址。**那么在函数内部我们写sizeof(arr) 计算的是一个地址的大小单位字节而不是数组的大小单位字节。**正是因为函数的参数部分是本质是指针所以在函数内部是没办法求的数组元素个数的。 void test(int arr[])//参数写成数组形式本质上还是指针 {printf(%d\n, sizeof(arr)); } void test(int* arr)//参数写成指针形式 {printf(%d\n, sizeof(arr));//计算⼀个指针变量的⼤⼩ } int main() {int arr[10] { 1,2,3,4,5,6,7,8,9,10 };test(arr);return 0; } 总结一维数组传参形参的部分可以写成数组的形式也可以写成指针的形式。 三、冒泡排序 3.1 基本思想 冒泡排序Bubble Sort是一种简单的排序算法通过重复遍历待排序的数组依次比较相邻元素的值若顺序错误例如升序时前一个元素大于后一个元素则交换它们的位置。每一轮遍历会将当前未排序部分的最大或最小元素“冒泡”到其正确的位置。 冒泡排序的核心思想就是两两相邻的元素进行比较。 //⽅法1 void bubble_sort(int arr[], int sz)//参数接收数组元素个数 {int i 0;for (i 0; i sz - 1; i){int j 0;for (j 0; j sz - i - 1; j){if (arr[j] arr[j 1]){int tmp arr[j];arr[j] arr[j 1];arr[j 1] tmp;}}} } int main() {int arr[] { 3,1,7,5,8,9,0,2,4,6 };int sz sizeof(arr) / sizeof(arr[0]);bubble_sort(arr, sz);int i 0;for (i 0; i sz; i){printf(%d , arr[i]);}return 0; } //⽅法2 - 优化 void bubble_sort(int arr[], int sz)//参数接收数组元素个数 {int i 0;for (i 0; i sz - 1; i){int flag 1;//假设这⼀趟已经有序了int j 0;for (j 0; j sz - i - 1; j){if (arr[j] arr[j 1]){flag 0;//发⽣交换就说明⽆序int tmp arr[j];arr[j] arr[j 1];arr[j 1] tmp;}}if (flag 1)//这⼀趟没交换就说明已经有序后续⽆序排序了break;} } int main() {int arr[] { 3,1,7,5,8,9,0,2,4,6 };int sz sizeof(arr) / sizeof(arr[0]);bubble_sort(arr, sz);int i 0;for (i 0; i sz; i){printf(%d , arr[i]);}return 0; }数组传参的时候传递是数组首元素的地址 1.函数的形参可以写成数组也可以写成指针 2.所以在函数内没办法计算数组的元素个数 3.所以形参的数组和实参的数字是同一个数组 void bubble_sort(int arr[], int sz) {int i 0;//趟数for(i 0; i sz-1; i){int flag 0;//假设已经有序//处理一趟排序的过程 - 处理多少对数据for (int j 0; j sz-1-i; j){if (arr[j] arr[j 1]){flag 1;int tmp arr[j];arr[j] arr[j 1];arr[j 1] tmp;}}if (flag 0){break;}} }void print_arr(int arr[], int sz) {int i 0;for (i 0; i sz; i){printf(%d , arr[i]);}printf(\n); }int main() {//3,1,7,5,8,9,0,2,4,6//排序 - 排成升序//int arr[] {9,8,7,6,5,4,3,2,1,0};int arr[] {1,2,3,4,5,6,7,8,9,10};//冒泡排序int sz sizeof(arr) / sizeof(arr[0]);print_arr(arr, sz);bubble_sort(arr, sz);print_arr(arr, sz);return 0; }四、二级指针 4.1 基本概念 指针的指针二级指针**是指向指针的指针。 层级关系二级指针存储的是一级指针的地址而一级指针存储的是变量的地址。 指针变量也是变量是变量就有地址那指针变量的地址存放在哪里 这就是二级指针 。 对于二级指针的运算有 • *ppa 通过对ppa中的地址进行解引用这样找到的是 pa *ppa 其实访问的就是 pa int b 20; *ppa b;//等价于 pa b;**ppa 先通过 *ppa 找到 pa ,然后对 pa 进行解引用操作 *pa 那找到的是 a **ppa 30; //等价于*pa 30; //等价于a 30;五、指针数组 C语言中的指针数组是一种特殊的数组其元素都是指针类型。每个元素可以指向不同类型或相同类型的数据常用于管理多个地址如字符串数组、动态内存分配等。 指针数组是指针还是数组 我们类比一下整型数组是存放整型的数组字符数组是存放字符的数组。 那指针数组呢是存放指针的数组。 1 指针数组的定义 语法数据类型 *数组名[数组长度]; 特点数组的每个元素都是一个指针需单独初始化后才能使用。 示例 int *ptr_arr[5]; // 定义一个包含5个整型指针的数组 char *str_arr[3]; // 定义一个包含3个字符指针的数组指针数组的每个元素是地址又可以指向一块区域。 七、结尾 这一课的内容就到这里了下节课继续学习指针的其他一些知识 如果内容有什么问题的话欢迎指正有什么问题也可以问我
http://www.hkea.cn/news/14304125/

相关文章:

  • 网站开发学习视频网站建设费如何入账
  • 软件开发税率是13%还是6汕头seo全网营销
  • 长葛网站建设珠海企业网站建站
  • 建设用地规划许可证查询网站wordpress后台登录地址改
  • 十里堡网站建设镇江网站建设设计
  • 做网站 怎么赚钱17网站一起做网店河北
  • 网站开发 科技淘宝网站建设可行性分析
  • 深圳建设网站排名福田网站制作报价
  • 淮南建网站公司企业宣传海报设计制作
  • 本地建站工具百度网页首页
  • 怎样创建网站的基本流程wordpress短代码
  • 企业网站模板免费下载企业网站模板调用wordpress栏目列表
  • 集团网站怎么建设有什么网站可以做免费推广
  • 网站的推广优化百度seo营销网站
  • 深圳坂田做网站临沂企业做网站
  • 网站留言系统 提交没反应网站的备案all
  • 给网站做推广一般花多少钱WordPress批量修改图片大小
  • 网站做推广有用吗商务软文写作
  • 西安火车站建设网站如何做服务器授权书
  • 织梦网站如何做404wordpress模板製作
  • 宁波企业网站设计哈尔滨做网站收费
  • 互联网与网站有哪些辽宁响应式网站建设哪家好
  • 国外图片设计网站有哪些福建建筑人才市场
  • 无锡网站建设专家wordpress templateredirect
  • 建设网站专家室内设计效果图怎么画
  • 鲁斌 42450745 网站建设红色风格网站
  • 怎么把网站关联到万网wordpress后台404
  • 不成立公司怎么做企业网站百度软文推广公司
  • 网站关键词都没有了公司门户网站源码
  • 网站推广途径和推广要点有哪些?h5电子商城网站开发