MST

星途 面试题库

面试题:C语言中多维数组定义及初始化问题

请定义一个3行4列的二维数组,并将其初始化,使得每一行元素之和等于该行行号(行号从0开始),然后编写代码计算该二维数组所有元素的总和并输出。
21.6万 热度难度
编程语言C

知识考点

AI 面试

面试题答案

一键面试
# 定义并初始化二维数组
array = [[0 for _ in range(4)] for _ in range(3)]
for i in range(3):
    for j in range(4):
        if j < i + 1:
            array[i][j] = 1

# 计算二维数组所有元素的总和
total = sum(sum(row) for row in array)
print(total)

在上述代码中:

  1. 首先使用列表推导式定义了一个3行4列的二维数组 array,并初始化为全0。
  2. 然后通过两层循环,使得每一行前 i + 1 个元素赋值为1,从而保证每一行元素之和等于该行行号。
  3. 最后使用 sum 函数嵌套计算出所有元素的总和并输出。