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

网站备案号是什么意思爱情链接

网站备案号是什么意思,爱情链接,开发网站的硬件成本,wordpress 随机页面C语言 主要内容 数组 二维数组 数组 二维数组 定义 二维数组本质上是一个行列式的组合,也就是说二维数组由行和列两部分组成,属于多维数组。二维数组数据是通过行列进行解读。二维数组可被视为一个特殊的一维数组,相当于二维数组又是一…

C语言

主要内容

  • 数组
    • 二维数组

数组

二维数组

定义
  • 二维数组本质上是一个行列式的组合,也就是说二维数组由行和列两部分组成,属于多维数组。二维数组数据是通过行列进行解读。
  • 二维数组可被视为一个特殊的一维数组,相当于二维数组又是一个一维数组,只不过它的元素是一维数组。(也就是说数组的元素的类型可以是数组类型)
语法:
数据类型 数组名[行数][列数]; // 二维数组外层表示行数,内层表示列数

举例:

int arr[3][3] = {{11,12,13},{21,22,23},{31,32,33}}; // 正确,等价于下面写法
int arr[][3] = {{11,12,13},{21,22,23},{31,32,33}}; // 正确,广义上称之为柔性数组int arr[3][3] = {{11,12},{21,22,23},{31}}; // 正确,等价于下面写法
int arr[3][3] = {{11,12,0},{21,22,23},{31,0,0}};// 正确int arr[3][3] = {}; // 正确,所有的元素使用0填充
int arr[3][3] = {{11}}; // 正确,未初始化的元素使用0填充int arr[][] = {{11,12,13},{21,22,23},{31,32,33}}; // 错误,这种写法,会编译标错,不能省略列数
int arr[3][] = {{11,12,13},{21,22,23},{31,32,33}};// 错误,这种写法,会编译标错,不能省略列数

注意:在C语言中,二维数组在计算机的存储顺序是按行进行的,即第一维的(行)下标变化慢,第二维的(列)下标变化快。

应用场合

主要应用于数据有行列要求的情况。

特殊写法
  • 下标可以是整型表达式,如: a[2-1][2*2-1]

  • 下标可以是已经有值的变量或数组元素,如: a[2*x-1][b[3][1]]

  • 数组元素可以出现在表达式中,如: b[1][2] = a[2][3]/2

注意:使用数组元素的下标应在已定义数组的大小范围内;应注意区别定义数组大小和引用数组元素的区别。

初始化
  • 分行给二维数组赋初值

    int arr[3][4] = {{11,12,13,14},{21,22,23,24},{31,32,33,34}};
    
  • 可将所有数据写在一个花括号内,按照排列顺序对元素赋值

    int arr[3][4] = {11,12,13,14,21,22,23,24,31,32,33,34};
    
  • 可对部分元素赋初值,其余未赋值部分自动填充整型默认值-0 | 字符型默认值-\0 | 浮点型默认值-0.0..

    int arr[3][4] = {{11},{21,22},{31}};
    
  • 若对全部元素赋初值,自定义数组时可以省略第1维数组的长度,第2维数组的长度必须指明。

    int a[][4] = {11,12,13,14,21,22,23,24,31,32,33,34};
    
  • 在分行赋初值时,也可以省略第1维的长度。

    int arr[][4] = {{11,12,13},{0},{0,10}};
    
二维数组的案例

案例1:

  • 需求:二维数组的遍历

  • 代码:

    #include <stdio.h>int main()
    {// 创建一个二维数组,经过论证,二维数据组必须指定列的大小,行的大小可以省略int arr[][3] = {{11},{21,22},{31,32,33}};// 获取二维数组的大小int r_len = sizeof(arr) / sizeof(arr[0]);// 遍历二维数组// 外层循环,遍历行元素(行元素是数组类型)for (int row = 0; row < r_len; row++){// 获取行元素中列元素的个数int c_len = sizeof(arr[row]) / sizeof(int);// 内层循环,遍历列元素(列元素是单一类型)for (int col = 0; col < c_len; col++){// 获取元素printf("%-3d",arr[row][col]); // 意思是获取数组arr第row行第col列}}printf("\n");return 0;
    }
    

案例2:

  • 需求:矩阵的转置(将一个2行3列的数组转换为3行2列的数组)

  • 代码:

    #include <stdio.h>// 定义行和列
    #define ROW 2
    #define COL 3int main()
    {// 准备2个数组用来存放转置前后的数列int arr_before[ROW][COL] = {{11,12,13},{14,15,16}};int arr_after[COL][ROW] = {0};// 计算arr_before的大小int r_len = sizeof(arr_before) / sizeof(arr_before[0]);// int c_len = sizeof(arr_before[0]) / sizeof(arr_before[0][0])// 遍历for (int i = 0; i < r_len; i++){// 计算arr_before中行中的列数int c_len = sizeof(arr_before[i]) / sizeof(int);for (int j = 0; j < c_len; j++){printf("%-4d",arr_before[i][j]);// 转置arr_after[j][i] = arr_before[i][j];}printf("\n");}printf("\n");// 遍历for (int i = 0; i < sizeof(arr_after)/sizeof(arr_after[0]);i++){for (int j = 0; j < sizeof(arr_after[i]) / sizeof(int); j++){printf("%-4d",arr_after[i][j]);}printf("\n");}printf("\n");return 0;
    }
    
http://www.khdw.cn/news/33859.html

相关文章:

  • 网站开发的未来发展趋势网络营销案例成功案例
  • 深圳个性化建网站公司怎么找关键词
  • 做内容网站网站seo分析常用的工具是
  • 武汉建站模板源码外贸网络推广公司
  • 湘潭网站建设 很好磐石网络网店关键词怎么优化
  • 免费搭建个人网站的3种实用方法郑州网络营销与网站推广
  • 海淀高端网站建设百度推广渠道
  • 用什么网站做微信推送长沙营销型网站建设
  • 用jsp做网站搜索广告排名
  • 网站建设欣新网站怎么做推广
  • 国外设计素材网站互联网营销模式有哪些
  • 网站怎么做切换中英文怎样优化标题关键词
  • 西昌市做网站的公司找资源的关键词有哪些
  • 平易云 网站建设长春网站建设平台
  • 美轮美奂的网站建设 为您独家定制谷歌下载官网
  • 南昌 网站建设网络营销师培训费用是多少
  • 贵州省城乡和住房建设厅网站百度推广怎么优化
  • 100件创意产品设计国外seo优化顾问
  • 怎么做中英文双语网站网络营销策划书应该怎么写
  • jsp动态网站开发实训心得商城系统开发
  • 建立企业网站费用b站推广网站
  • 网站网页怎么压缩网站优化包括哪些内容
  • 网站开发的接口文档钦州seo
  • 网站建设管理方案网络营销创意案例
  • 民族服装的网站建设营销引流都有什么方法
  • 有无广告销售版本"有广告免费无广告收费"网站成品网站源码
  • 网站建设vs网络推广百度指数搜索榜
  • 做团建活动网站新闻媒体发稿平台
  • 网络营销的方法有哪些方式杭州seo营销公司
  • 大连网站建设游戏网站交换友情链接