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

1、若有以下的定义:
int a[]={1,2,3,4,5,6,7,8,9,10},*p=a
则值为3的表达式是

p+=2,*(p++)

p+=2,*++p

p+=3,*p++

p+=2,++*p

2、用数组名作为函数调用时的实参,实际上传送给形参的是

数组首地址

数组的第一个元素值

数组中全部元素的值

数组元素的个数

3、表达式1&3&5&7的值为:

1

3

5

7

4、不能把字符串:Hello! 赋给数组b的语句是

char b[10]={'H','e','l','l','o','!'};

char b[10];  b="Hello!";

char b[10];  strcpy(b,"Hello!");

char b[10]="Hello!";

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

字符数组可以存放字符串

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

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

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

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

'a'<=c<= 'z'

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

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

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

7、若有以下说明和语句,则输出结果是?
char str[]="\"c:\\abc.dat\"";
printf("%s",str);

字符串中有非法字符

\"c:\\abc.dat\"

"c:\abc.dat"

"c:\\abc.dat"

8、若有如下类定义:
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)等价

9、以下关于typedef的叙述中错误的是:

用typedef可以增加新的类型

用typedef可以定义各种类型名,但不能用来定义变量

用typedef只是将已有的类型用新的标识符来代表

使用typedef有利于程序的通用和移植

10、函数调用:strcat(strcpy(str1,str2),str3)的功能是

将串str1复制到串str2中后再连接到串str3之后

将串str1连接到串str2之后再复制到串str3之后

将串str2复制到串str1中后再将串str3连接到串str1之后

将串str2连接到串str1之后再将串str1复制到串str3中