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

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

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

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

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

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

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

9

7

5

以上均不是

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

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

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

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

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

4、有以下程序段
int x=3
do
{ printf("%d",x-=2); }
while (!(--x));
其输出结果是

1

3 0

1 -2

死循环

5、不能把字符串: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!";

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

字符数组可以存放字符串

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

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

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

7、以下程序的输入结果是
main( )
{  int i=010,j=10,k=x10;
  printf("%d,%d,%d ",i,j,k);
}

8,10,16

8,10,10

10,10,10

10,10,16

8、下述程序段的输出结果是?
int x=10;
t y=x++;
printf(″%d,%d″,(x++,y),y++);

11,10

11,11

10,10

10,11

9、若i、j已定义为int型,则以下程序段中内循环体的总的执行次数是
for(i=5;i>0;i--)
for(j=0;j<4;j++){…}

20

24

25

30

10、当调用函数时,实参是一个数组名,则向函数传送的是

数组的长度

数组的首地址

数组每一个元素的地址

数组每个元素中的值