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

如何自助建网站包头网站建设哪家好

如何自助建网站,包头网站建设哪家好,深圳市网站建设科技公司,评价一个网站的优缺点一维数组的创建和初始化 数组是一组相同类型元素的集合。 数组的创建 //数组的创建方式#xff1a;type_t arr_name [const_n];//type_t 是指数组的元素类型//const_n 是一个常量表达式#xff0c;用来指定数组的大小数组创建的实例#xff1a; 数组创建#xff…一维数组的创建和初始化 数组是一组相同类型元素的集合。 数组的创建 //数组的创建方式type_t arr_name [const_n];//type_t 是指数组的元素类型//const_n 是一个常量表达式用来指定数组的大小数组创建的实例 数组创建在C99标准之前 [] 中要给一个常量才可以不能使用变量。 #define _CRT_SECURE_NO_WARNINGS #includestdio.hint main() {int arr1[5];char arr2[8];float arr3[15];double arr4[10];return 0; }C99标准引入了变长数组的概念数组的大小可以使用变量指定但是在VS中数组不能初始化。 #define _CRT_SECURE_NO_WARNINGS #includestdio.hint main() {n 10;int arr[n];return 0; }数组的初始化 数组的初始化是指在创建数组的同时给数组的内容一些合理初始值初始化。 #define _CRT_SECURE_NO_WARNINGS #includestdio.hint main() {int arr1[10] { 1,2,3,4,5,6,7,8,9,10 };//完全初始化int arr2[10] { 1,2,3,4,5 };//不完全初始化剩余部分默认初始化为零char arr3[10] { a,b, 99 };//字符类型数组默认将数字对应为字符的ASCLL码值char arr4[10] abcdef;//不完全初始化剩余部分默认初始化为‘\0’//如果数组初始化了可以不指定数组的大小数组大小会根据初始化的内容来决定char arr5[] { a,b, 99 };char arr6[] abc;return 0; }一维数组的使用 对于数组的使用介绍一个操作符 [ ] (下标引用操作符)。它其实就是数组访问的操作符。 #define _CRT_SECURE_NO_WARNINGS #includestdio.hint main() {int arr[10] { 0 };//数组的不完全初始化//计算数组的元素个数int sz sizeof(arr) / sizeof(arr[0]);//对数组内容赋值,数组是使用下标来访问的下标从0开始。所以int i 0;//做下标for (i 0; i 10; i){arr[i] i;}//输出数组的内容for (i 0; i 10; i){printf(%d , arr[i]);}return 0; }总结: 数组是使用下标来访问的下标是从0开始。 数组也是有类型的去掉数组名就是数组的类型。 数组的大小可以通过计算得到。 int arr[10]; int sz sizeof(arr)/sizeof(arr[0]);一维数组在内存中的存储 仔细观察输出的结果我们知道随着数组下标的增长元素的地址也在有规律的递增。由此可以得出结论 数组在内存中是连续存放的。 随着下标的增长地址是由低到高变化的。 因此我们只要拿到首元素地址就相当于知道了所有元素的地址。 二维数组的创建和初始化 二维数组的创建 //数组创建 int arr[3][4]; //3行4列 char arr[3][5]; //3行5列我们想象中的多维数组是这样的 二维数组的初始化 //数组初始化 int arr[3][4] {1,2,3,4}; //不完全初始化 int arr[2][4] {{1,2},{4,5}}; //不完全初始化 int arr[][4] {{2,3},{4,5}}; //不完全初始化 //二维数组如果有初始化行可以省略列不能省略二维数组的使用 二维数组的使用也是通过下标的方式行和列的下标都是从零开始的。 二维数组在内存中的存储 我们惊奇的发现二维数组在换行时地址还是增加4个字节这说明了二维数组在内存中还是连续存放的。 如果把二维数组的每一行看作一个一维数组那么每一行的一维数组也有数组名 arr[0]就是第一行的数组名arr[1]就是第二行的数组名arr[3]就是第三行的数组名以此类推。 数组越界 数组的下标是有范围限制的。 数组的下标规定是从0开始的如果数组有n个元素最后一个元素的下标就是n-1。 所以数组的下标如果小于0或者大于n-1就是数组越界访问了超出了数组合法空间的访问。C语言本身是不做数组下标的越界检查编译器也不一定报错但是编译器不报错并不意味着程序就是正确的所以我们在写代码时最好自己做越界的。 同样的二维数组的行和列也可能存在越界。 数组作为函数参数 往往我们在写代码的时候会将数组作为参数传个函数比如我要实现一个冒泡排序这里要讲解的是算法思想函数将一个整形数组排序。 冒泡排序函数的错误设计 #include stdio.h void bubble_sort(int arr[]) {int i 0;int sz sizeof(arr) / sizeof(arr[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 };//排升序//冒泡排序bubble_sort(arr);int i 0;for (i 0; i 10; i){printf(%d , arr[i]);}return 0; }调试之后可以看到 bubble_sort 函数内部的 sz 是1。难道数组作为函数参数的时候不是把整个数组的传递过去? 数组名是什么 数组名是数组首元素的地址。 有两个例外 sizeof(数组名)计算整个数组的大小sizeof内部单独放一个数组名数组名表示整个数 组。数组名取出的是数组的地址。数组名数组名表示整个数组。 除此1,2两种情况之外所有的数组名都表示数组首元素的地址。 冒泡排序函数的正确设计 当数组传参的时候实际上只是把数组的首元素的地址传递过去了。 所以即使在函数参数部分写成数组的形式 int arr[] 表示的依然是一个指针 int *arr 。 那么函数内部的 sizeof(arr) 结果是 4/8。 #include stdio.h void bubble_sort(int arr[],int sz)//int arr[]本质上是指针int* arr来接收地址 {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);//arr是数组首元素地址int i 0;for (i 0; i 10; i){printf(%d , arr[i]);}return 0; }数组的应用实例三子棋 数组的应用实例扫雷游戏
http://www.hkea.cn/news/14578981/

相关文章:

  • 礼品网站建设策划产品推荐词
  • 店铺网站建设策划书万达网站建设
  • 深圳专业营销网站制作清欢互联网网站建设
  • 成都网站设计网站制作公司怎么样购买网站空间
  • 高端网站设计简介厦门做网站优化多少钱
  • 哈尔滨模板建站软件百度网址大全下载安装
  • 个人网站的留言板怎么做陕西新闻最新消息今天
  • 网站seo优化分析报告如何注册一家投资公司
  • 友情链接网站大全最新发布的手机
  • 对网站备案的认识wordpress 怎么改中文字体
  • 浙江省建设厅执业资格注册中心网站网站主页用ps做
  • 外贸网站如何做推广电话怎样自己开网站赚钱
  • 新网互联魔方手机网站建站系统杭州网站建设哪家设计好
  • 湛江网站建设工作深圳晚报电子版
  • 建筑建材网站设计费用昆明自助建站软件
  • 网站首页 排版网站建设维护是干什么
  • 备案二级域名分发深圳seo网站建设
  • wordpress评论推广seo网站程序
  • 房产网站的全景图怎么做网站建设教程速成
  • 江苏省住房与城乡建设厅网站济南做网站的公司
  • 科技企业网站设计制作湖南建设监理报名网站
  • 杭州有没有专业做网站的公司wordpress免费汽车配件企业主题
  • 浙江省网站建设公司排名wordpress 留言页面
  • 网站开发 进度表电子政务门户网站建设
  • 哈尔滨公司网站建设鞍山网站制作推广
  • 广东网站备案查询系统个人创业做网站
  • 简单个人博客模板网站定制网站建设的流程图
  • 漳州建网站前十名少儿编程机构
  • 做学历的网站网站title 在哪里设置
  • 那个网站做搬家推广比较好一二三四免费观看视频中文版在线