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

1、若a为int类型,且其值为3,则执行完表达式a+=a-=a*a后,a的值是

-3

9

-12

6

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

0xFF

1.2e0.5

2L

'\72'

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

4、以下变量x、y、z均为double类型且已正确赋值,不能正确表示数学式子的C语言表达式是

x/y*z

x*(1/(y*z))

x/y*1/z

x/y/z

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

字符串中有非法字符

\"c:\\abc.dat\"

"c:\abc.dat"

"c:\\abc.dat"

6、下列程序段的输出结果是
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

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

20

24

25

30

8、以下所列的各函数首部中,正确的是

void play(var :Integer,var b:Integer)

void play(int a,b)

void play(int a,int b)

Sub play(a as integer,b as integer)

9、设有以下定义或语句,则输出的结果是?
(用small模式编译,指针变量占2个字节)
struct date
{long *cat;
struct date *next;
double dog;
}too;
printf("%d",sizeof(too));

20

16

14

12

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

宏替换只是字符替换

宏名无类型

宏替换不占用运行时间

宏替换不占用编译时间