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

商城网站开发设计购物商城网站功能设计

商城网站开发设计,购物商城网站功能设计,神奇的工作室最新网站,青岛哪里有做网站公司的引言#xff1a; 小伙伴们#xff0c;我发现我正文更新的有些慢#xff0c;但相信我#xff0c;每一篇文章真的都很用心在写的#xff0c;哈哈#xff0c;在本篇博客当中我们将详细讲解一下C语言中的数组知识#xff0c;方便大家后续的使用#xff0c;有不会的也可以当…引言 小伙伴们我发现我正文更新的有些慢但相信我每一篇文章真的都很用心在写的哈哈在本篇博客当中我们将详细讲解一下C语言中的数组知识方便大家后续的使用有不会的也可以当作知识点补充哟那我们正文开始吧! 一.数组的概念 所谓数组就是一组相同类型元素的集合那么也就是说数组中存放的数据可以是一个或者多个但是数组元素不能为0并且在一个数组中存放的所有数据都是同一种数据类型。数组分为一维数组和多维数组多维数组中常见的是二维数组。 二.一维数组的创建和初始化 2.1数组创建 一维数组的基础语法如下代码所示 type arr_name[常量值]; 存放在数组中的元素又被称为是数组的元素数组在创建时可以指定数组的大小和数组元素的类型针对上述代码还有以下需要注意的地方 1.type指的是数组中存放数据的类型可以是char,int,double,long long等也可以是自定义类型。 2.arr_name指的是数组名一般情况下自定义即可。 3.[]中的常量指定数组的大小这个大小1根据需求而定即可。 例如我们需要给定一个数组存储班里40人的数学成绩 double math[40]; 因为成绩可能存在小数所以我们使用double类型的数组来定义那么既然是40人就给定40的大小即可。 2.2数组的初始化 有些时候我们需要给数组赋予一些初值我们该如何操作呢这便是数组的初始化初始化一般使用大括号将数据放在大括号之中。 int arr[5]{1,2,3,4,5}; //完全初始化 int arr[5]{1,2,3}; //不完全初始化 int arr[2]{1,2,3}; //错误的初始化-初始化太多 我们观察以上三种初始化方式我们发现第一种做到了完全初始化即数组中每个下标对应都有相应的初始值而第二种只初始化到第三个那么第四个和第五个数默认就是0了第三种数组初始化方式赋值又太多会导致程序报错。 2.3数组的类型 int arr1[10]; int arr2[12]; char ch[10]; 数组也是有类型的数组算是一种自定义类型去掉数组名后剩下的就是数组的类型如上述代码所示arr1的数组类型是int [10];arr2的数组类型是int [12];ch的数组类型是char [10]; 三.一位数组的使用 学会了数组的基本语法那么我们接下来介绍一维数组的基本使用我们先从下标这里说起 3.1数组下标 在C语言中数组是有下标的但是这里的下标并不是从1开始而是从0开始假如你有一个arr[10]的数组那么它的最大访问是arr[9],我们通过代码和图形来进一步解释。 int arr[10]{1,2,3,4,5,6,7,8,9,10}; 那么当我们访问arr[9]时它所对应的数字应该是10才对了如下述代码所示 #include stdio.h int main() {int arr[10]{1,2,3,4,5,6,7,8,9,10};printf(%d\n,arr[9]);printf(%d\n,arr[0]);return 0; } 3.2一维数组的打印 如果我们想要访问整个数组那我们该如何操作上文说到我们可以通过下标来指向数组元素那么我们访问整个数组的方式也是遍历一遍所有的下标来进行打印如下代码所示 #include stdio.h int main() {int arr[10]{1,2,3,4,5,6,7,8,9,10};int lensizeof(arr)/sizeof(arr[0]);//使用数组名除以数组首元素的方式来获得数组的大小for(int i0;ilen;i){printf(%d ,arr[i]);}return 0; } 3.3数组的输入 我们结合数组的打印来看既然数组需要通过下标来访问那么我们在输入时也需要根据下标对应的位置来进行输入如下代码所示 #include stdio.h int main() {int arr[10]{1,2,3,4,5,6,7,8,9,10};int lensizeof(arr)/sizeof(arr[0]);for(int i0;ilen;i){scanf(%d ,arr[i]);}for(int i0;ilen;i){printf(%d ,arr[i]);}return 0; } 四.一维数组在数组中的存储 有了前面这些知识在使用一维数组解决简单问题基本就没有什么障碍了我们继续深入数组了解一下数组在内存中的存储如下代码所示依次打印数组在内存中的存储。 #include stdio.h int main() {int arr[10]{1,2,3,4,5,6,7,8,9,10};int lensizeof(arr)/sizeof(arr[0]);for(int i0;ilen;i){printf(arr[%d]%p\n,i,arr[i]);}return 0; } 从输出的结果中我们不难发现数组随着下标的增长地址是从小到大变化的并且我们发现每两个相邻的元素之间相差4因为一个整形是四个字节所以我们得出结论数组在内存中是连续存放的这为将来的指针学习奠定了基础。 五.二维数组的创建 5.1二维数组的概念 前面学习的数组被称为一维数组数组的元素都是内置类型的我们如果把一维数组做为数组的元素那么它就是二维数组有点像套娃哈二维数组为元素的数组又是三维数组二维数组以上的数组统称为多维数组这里我们重点讲解二维数组即可。 5.2二维数组的创建 我们该如何定义二维数组呢语法如下所示 type arr_name[常量1][常量2];例如 int arr[3][5]; double data[2][5]; arr数组解释 1.3代表数组有3行 2.5代表每行有5个元素 3.int表示数组中每个元素都是整数类型 4.arr是数组名一般可自定义 data数组同理。 六.二维数组的初始化 在创建变量或者数组的时候给定一些初值叫做初始化二维数组也一样使用大括号初始化 6.1不完全初始化 int arr1[3][5]{1,2}; int arr2[3][5]{0}; 6.2完全初始化 int arr[3][5]{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15}; 6.3按行执行初始化 int arr[3][5]{{1,2},{3,4},{5,6}}; 6.4初始化时省略行但不能省略列 int arr1[][5]{1,2,3}; int arr2[][5]{1,2,3,4,5,6,7,8}; int arr7[][5]{{1,2},{3,4},{5,6}}; 七.二维数组的使用 7.1二维数组的下标 在C语言中规定了二维数组的行和列下标都是从0开始的如下代码所示 #include stdio.h int main() {int arr[2][3]{1,2,3,4,5,6};printf(%d %d,arr[0][0],arr[1][2]);return 0; } 7.2二维数组的输入和输出   我们可以参照一维数组的打印通过下标来对二维数组进行输入和输出这里就需要借助到两个for循环如下代码所示 #include stdio.h int main() {int arr[3][5]{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15};int i0;for(int i0;i3;i){for(int j0;j5;j){scanf(%d,arr[i][j]);}}for(int i0;i3;i){for(int j0;j5;j){printf(%d ,arr[i][j]);}}return 0; } 八.二维数组在内存中的存储 像一维数组一样二维数组在内存中也有自己独特的存储方式如下代码所示 #include stdio.h int main() {int arr[3][5]{0};for(int i0;i3;i){for(int j0;j5;j){printf(arr[%d][%d]%p\n,arr[i][j]);}}return 0; } 九.数组练习——二分差找 掌握了前面的知识后我们就可以运用数组来解决问题了比如经典的二分查找也叫做折半查找大体上就是让你找一个数字输出它所在数组中的下标如下代码所示 #include stdio.h int main() {int arr[]{1,2,3,4,5,6,7,8,9,10};int left0;int rightsizeof(arr)/sizeof(arr[0])-1;int key7;//要查找的数字int mid0;//记录中间元素的下标int find0;while(leftright){mid(leftright)/2;if(arr[mid]key){rightmid-1;}else if(arr[mid]key){leftmid1;}else{find1;break;}}if(find1){printf(%d\n,mid);}else{printf(没找到);}return 0; } 十.小结 在本篇博客中我们介绍了一维数组和二维数组的创建初始化等初步使用并在最后补充了一下初步的二分查找希望本篇博客对你掌握二维数组有所帮助谢谢您的点赞。
http://www.dnsts.com.cn/news/113613.html

相关文章:

  • 怎么样注册一个网站wordpress 无图插件
  • 宝安建网站多少钱wordpress的nginx伪静态规则
  • 南通网站公司中国设计网站排行榜前十名
  • 现在建设一个网站还能够赚钱吗上海企业信息查询公示系统
  • 网站建设毕业设计说明书word文档手机版官方网站的建设
  • 建设网站有哪些术语做网站网站要找谁
  • 锦州网站建设市场查企业企业网站有哪些
  • googl浏览器做桌面版网站郑州网约车官网
  • 浙江创新网站建设销售公司做企业网站须知
  • 网站开发的投标案例wordpress媒体库图片不加载
  • 滴答手表网站html代码下载
  • 房地产网站建设方案商城网站建设网络公司
  • 网站推广文案怎么写刚做优化的网站什么能更新
  • 网站后台更新前台更新不外国网站在中国做推广
  • 下列关于网站开发中网友上传深圳哪里做网站
  • 网站登录密码忘记了怎么办动漫网站在线免费观看
  • wap手机网站模板苍山做网站
  • 广州网站seo地址云南昆州建设工程有限公司网站
  • 宝安中心网站建设wordpress 加入代码
  • 新网站制作公司建设项目备案网站
  • 高水平的锦州网站建设建设银行官方网站诚聘英才频道
  • .net wap网站模板做影评的网站模版
  • 现在网站做SEO怎么样网站建设制作 企业站开发哪家好
  • 企业官网型网站模板下载网站建站卖首饰侵权
  • 做网站要有自己服务器吗品牌建设是指
  • 价格网app下载常德网站优化推广
  • 电商网站建设与课程设计苏醒wordpress
  • 重庆建设教育协会网站首页广州建设工程交易网
  • 做视频网站把视频放在哪里世界军事新闻最新消息
  • 如何利用网站策划做好网站建设上海到北京高铁价格查询