设有以下程序段: float a[8]={1.0,2.0}; int b[1]={0}; char c[]={"A","B"}; char d=="1"; 以下叙述正确的是( )。

admin2016-04-07  30

问题 设有以下程序段:
  float a[8]={1.0,2.0};
  int b[1]={0};
  char c[]={"A","B"};
  char d=="1";
  以下叙述正确的是(    )。

选项 A、只有变量c的定义是合法的
B、只有变量a,b,c的定义是完全合法的
C、所有变量的定义都是完全合法的
D、只有变量a,b的定义是完全合法的

答案D

解析 noat a[8]={1.0,2.0};定义了一个包含8个float型元素的数组,并初始化了数组的前2项,其他项是随机数。int b[1]={0},定义了只有一个int型元素的数组,并初始化为0。char c[]={"A","B"};定义一个char型数组,大小有初始化元素决定,但初始化值是字符串,类型不兼容,编译出错。char d="1";定义一个char型变量,但是初始化赋值字符串,类型不兼容,编译出错。因此只有数组a,b的定义和初始化正确。故答案为D选项。
转载请注明原文地址:https://kaotiyun.com/show/43Dp777K
0

最新回复(0)