第28练 第6章 二维数组程序举例《C语言程序设计》(电子工业出版社)一课一练

| 2份
| 7页
| 40人阅读
| 0人下载

内容正文:

编写说明:考虑到中职学生普遍基础知识相对薄弱的情况,我们依据支架式教学理念,精心编制了《C语言程序设计》(电子工业出版社)一课一练。专辑里的每一份练习,都与课堂所授知识点紧密相关,题目围绕课堂所学知识点呈现。目的在于激发学生的学习兴趣,培养他们的学习自觉性,帮助学生扎实掌握课程的基本概念与基本方法,为他们后续的进一步提升奠定坚实基础。 本卷是《C语言程序设计》(电子工业出版社)一课一练的第6章的第28练,内容涵盖第6章数组的6.2.4 二维数组程序举例。 《C语言程序设计》(电子工业出版社)一课一练 第28练 第6章 数组 6.2.4 二维数组程序举例 1、 单项选择题(本题共4小题) 1、下列关于二维数组元素引用的写法中,合法的是( ) A. a (1,2) B. a [1,2] C. a [1][2] D. a [2] 【答案】C 【解析】二维数组元素的引用格式为 “数组名 [行下标][列下标]”,选项 A 用圆括号、选项 B 用逗号分隔下标均不符合语法规则,选项 D 是一维数组的引用方式。 2、对 3×4 的二维数组进行遍历,需要执行的元素比较或访问次数是( ) A. 7 次 B. 4 次 C. 3 次 D. 12 次 【答案】D 【解析】3×4 的二维数组总共有 3×4=12 个元素,遍历操作需要访问每一个元素,因此总次数为 12 次。 3、编写程序求二维数组最大值时,最大值变量的初始值最合适的设置是( ) A. 0 B. 数组的第一个元素值 C. 100 D. -100 【答案】B 【解析】如果初始值设为固定数值,当数组所有元素都大于或小于该固定值时,会导致最大值计算错误;将初始值设为数组第一个元素,能适配所有输入情况,保证结果准确。 4、定义int a[3][4];,该二维数组的最后一个元素是( ) A. a [2][3] B. a [3][4] C. a [3][3] D. a [2][4] 【答案】A 【解析】二维数组的行和列下标均从 0 开始,3 行的下标范围是 0~2,4 列的下标范围是 0~3,因此最后一个元素的下标为 [2][3]。 2、 判断题(本题共3题) 1、二维数组的行下标和列下标都是从 1 开始计数的。( ) 【答案】× 【解析】C 语言中二维数组的行下标和列下标均从 0 开始,例如 3×4 矩阵的行下标范围是 0~2,列下标范围是 0~3。 2、求 3×4 矩阵的最大值时,只需要遍历矩阵的第一行元素即可得到结果。( ) 【答案】× 【解析】最大值可能出现在矩阵的任意位置,必须遍历矩阵的所有元素,才能确保找到真正的最大值。 3、在查找二维数组最大值的程序中,每次更新最大值变量时,需要同步更新记录行号和列号的变量。( ) 【答案】√ 【解析】如果只更新最大值而不更新行号和列号,最终无法准确记录最大值所在的位置,导致结果信息不完整。 3、 填空题(本题共2题) 1、二维数组元素的引用格式为____[行下标][列下标]。 【答案】数组名 【解析】数组名用于标识具体的二维数组,行下标和列下标共同确定数组中某一个元素的唯一位置,这是二维数组元素引用的标准格式。 2、在求二维数组最大值的程序中,当发现当前元素大于记录的最大值时,除了更新最大值变量,还需要更新____。 【答案】记录最大值所在行号和列号的变量 【解析】只有同步更新行号和列号变量,才能准确追踪最大值的位置,最终输出完整的最大值及其所在行列的信息。 4、 读程序写结果题(本题共1题) 1、阅读下面的 C 语言程序,写出程序运行后的输出结果。 【程序代码】 #include <stdio.h> int main() { int mat[3][4] = {{5,2,8,3}, {1,9,4,6}, {7,0,12,10}}; int max = mat[0][0], row=0, col=0; for(int i=0; i<3; i++) { for(int j=0; j<4; j++) { if(mat[i][j] > max) { max = mat[i][j]; row = i; col = j; } } } printf("最大值:%d,所在行:%d,所在列:%d", max, row+1, col+1); return 0; } 【答案】 程序运行结果: 最大值:12,所在行:3,所在列:3 【解析】 程序先将矩阵第一个元素赋值给最大值变量,通过双层循环遍历所有元素,每次发现更大的元素时,更新最大值及对应的行号、列号。最终找到最大值 12,其下标为 [2][2],转换为日常从 1 开始的计数方式后,行和列均为 3。 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 $ 编写说明:考虑到中职学生普遍基础知识相对薄弱的情况,我们依据支架式教学理念,精心编制了《C语言程序设计》(电子工业出版社)一课一练。专辑里的每一份练习,都与课堂所授知识点紧密相关,题目围绕课堂所学知识点呈现。目的在于激发学生的学习兴趣,培养他们的学习自觉性,帮助学生扎实掌握课程的基本概念与基本方法,为他们后续的进一步提升奠定坚实基础。 本卷是《C语言程序设计》(电子工业出版社)一课一练的第6章的第28练,内容涵盖第6章数组的6.2.4 二维数组程序举例。 《C语言程序设计》(电子工业出版社)一课一练 第28练 第6章 数组 6.2.4 二维数组程序举例 1、 单项选择题(本题共4小题) 1、下列关于二维数组元素引用的写法中,合法的是( ) A. a (1,2) B. a [1,2] C. a [1][2] D. a [2] 2、对 3×4 的二维数组进行遍历,需要执行的元素比较或访问次数是( ) A. 7 次 B. 4 次 C. 3 次 D. 12 次 3、编写程序求二维数组最大值时,最大值变量的初始值最合适的设置是( ) A. 0 B. 数组的第一个元素值 C. 100 D. -100 4、定义int a[3][4];,该二维数组的最后一个元素是( ) A. a [2][3] B. a [3][4] C. a [3][3] D. a [2][4] 2、 判断题(本题共3题) 1、二维数组的行下标和列下标都是从 1 开始计数的。( ) 2、求 3×4 矩阵的最大值时,只需要遍历矩阵的第一行元素即可得到结果。( ) 3、在查找二维数组最大值的程序中,每次更新最大值变量时,需要同步更新记录行号和列号的变量。( ) 3、 填空题(本题共2题) 1、二维数组元素的引用格式为____[行下标][列下标]。 2、在求二维数组最大值的程序中,当发现当前元素大于记录的最大值时,除了更新最大值变量,还需要更新____。 4、 读程序写结果题(本题共1题) 1、阅读下面的 C 语言程序,写出程序运行后的输出结果。 【程序代码】 #include <stdio.h> int main() { int mat[3][4] = {{5,2,8,3}, {1,9,4,6}, {7,0,12,10}}; int max = mat[0][0], row=0, col=0; for(int i=0; i<3; i++) { for(int j=0; j<4; j++) { if(mat[i][j] > max) { max = mat[i][j]; row = i; col = j; } } } printf("最大值:%d,所在行:%d,所在列:%d", max, row+1, col+1); return 0; } 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 $

资源预览图

第28练 第6章 二维数组程序举例《C语言程序设计》(电子工业出版社)一课一练-第1页
1

由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。