如题目或答案有误,请通过BUG反馈告知我们修正,谢谢!

1、下面哪一项是不正确的字符串赋值或赋初值的方式

char *str; str="string";

char str[7]={'s','t','r','i','n','g'};

char str1[10];str1="string";

char str1[]="string",str2[]="12345678";

2、程序中定义以下宏 #define S(a,b) a*b
若定义 int area; 且令area=S(3+1,3+4),则变量area的值为:

10

12

21

28

3、下列对C语言字符数组的描述中错误的是

字符数组可以存放字符串

字符数组中的字符串可以整体输入、输出

可以在赋值语句中通过赋值运算符“=”对字符数组整体赋值

不可以用关系运算符对字符数组中的字符串进行比较

4、执行下列语句后,a的值为:
int a;
#define M(x,y) (x*y)
a=M(1+2,3);

9

7

5

以上均不是

5、表达式-1<=3<=-5值是:

0

1

3

表达式语法有错

6、若有如下类定义:
class Sample
{  public:
Sample() {value=0;}
Set(int k) {value=k;}
   private:
int value;
};
Sample *p, obj;
p=&obj;
则对下列语句序列正确的描述是:

语句p=&obj;是把对象obj赋值给指针变量p

语句Sample *p, obj;会调用两次类Sample的构造函数

对语句*p.Set(5)的调用是正确的

语句p->Set(5)与语句obj.Set(5)等价

7、以下所列的C语言常量中,错误的是

0xFF

1.2e0.5

2L

'\72'

8、以下叙述中不正确的是

在C中,函数中的自动变量可以赋初值,每调用一次,赋一次初值

在C中,在调用函数时,实参和对应形参在类型上只需赋值兼容

在C中,外部变量的隐含类别是自动存储类别

在C中,函数形参可以说明为register变量

9、若变量c为char类型,能正确判断出c为小写字母的表达式是

'a'<=c<= 'z'

(c>= 'a')||(c<= 'z')

('a'<=c)and ('z'>=c)

(c>= 'a')&&(c<= 'z')

10、设x、y、t均为int型变量,则执行语句:x=y=3;t=++x||++y;后,y的值为

不定值

4

3

1