选择以下程序的最佳陈述:
#include "stdio.h"
void fun(int n)
{
int idx;
int arr1[n] = {0};
int arr2[n];
for (idx=0; idx
(A) arr1和arr2的定义都不正确,因为变量用于指定数组的大小。这就是为什么编译错误。
(B)除了arr1 arr2的定义外,arr1的初始化也是不正确的。由于将arr1的大小指定为变量,因此无法对其进行初始化。这就是为什么编译错误。
(C) arr1的初始化不正确。由于将arr1的大小指定为变量,因此无法对其进行初始化。这就是为什么编译错误。
(D)没有编译错误。该程序将定义两个数组并将其初始化为零。答案: (C)
说明: arr1和arr2的定义没有问题。在这些数组的定义中,按照C标准使用变量来提及数组大小是可以的,但是在定义时无法初始化这些类型的数组。这就是为什么arr1的初始化不正确。但是arr2的初始化正确完成。正确答案是C。
这个问题的测验
想要从精选的最佳视频中学习和练习问题,请查看《基础知识到高级C的C基础课程》。