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

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

9

7

5

以上均不是

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

3、若有以下说明和语句,则输出结果是?
(strlen(s)为求字符串s的长度的函数)
char sp[]="\t\v\\\0will\n";
printf("%d",strlen(sp));

14

3

9

字符串中有非法字符

4、下列程序段的输出结果是
void fun(int *x, int *y)
{ printf("%d %d", *x, *y); *x=3; *y=4;}
main()
{ int x=1,y=2;
fun(&y,&x);
printf("%d %d",x, y);
}

2 1 4 3

1 2 1 2

1 2 3 4

2 1 1 2

5、若t为double类型,表达式t=1,t+5,t++的值是

1

6.0

2.0

1.0

6、以下c语言函数声明中,不正确的是:

void fun (int x, int y);

fun (int x, int y);

int fun (int x,y);

char *fun (char *s);

7、C语言中最简单的数据类型包括

整型、实型、逻辑型

整型、实型、字符型

整型、字符型、逻辑型

整型、实型、逻辑型、字符型

8、以下关于宏替换的叙述不正确的是:

宏替换只是字符替换

宏名无类型

宏替换不占用运行时间

宏替换不占用编译时间

9、以下程序的输出结果是
fut( int **s,int p[2][3])
{ **s=p[1][1];}
main( )
{  int a[2][3]={1,3,5,7,9,11},*P;
p=(int *)malloc(sizeof(int));
fut(&p,a);
print("% ",*p);
}

1

7

9

11

10、若执行完成下列语句:
int a=3,b=6,c;
c=a∧b<<2;
则变量c的二进制值为:

00011100

00010100

0001000

00011011