2025年春季学期全国计算机二级C语言指针与函数期末试题解析.docxVIP

  • 0
  • 0
  • 约1.19万字
  • 约 22页
  • 2026-01-16 发布于河北
  • 举报

2025年春季学期全国计算机二级C语言指针与函数期末试题解析.docx

2025年春季学期全国计算机二级C语言指针与函数期末试题解析

考试时间:______分钟总分:______分姓名:______

一、选择题(每小题2分,共20分。请将正确选项的字母填在括号内)

1.有以下代码:

```c

inta=5,b=10;

int*p1=a,*p2=b;

*p1=*p2;

```

执行上述代码后,变量`a`的值是()。

A.5

B.10

C.0

D.不确定

2.以下关于指针的描述中,正确的是()。

A.指针变量可以作为函数的返回值

B.指针变量的值可以是任意整数

C.`int*p;p=100;`是合法的赋值语句

D.`char*p=China;`定义的是字符数组

3.有以下代码:

```c

#includestdio.h

intfunc(int*arr,intlen){

returnarr[0]+arr[len-1];

}

intmain(){

intnums[]={1,2,3,4,5};

printf(%d\n,func(nums,5));

return0;

}

```

程序的输出结果是()。

A.1

B.2

C.4

D.5

4.以下关于函数参数传递的描述中,错误的是()。

A.值传递时,调用函数内部修改形参,不会影响实参

B.地址传递时,调用函数内部修改形参,会影响实参

C.函数参数可以是任意类型的变量

D.在函数调用时,实参可以是表达式

5.有以下代码:

```c

#includestdio.h

int*createArray(intsize){

int*arr=(int*)malloc(size*sizeof(int));

if(arr!=NULL){

for(inti=0;isize;i++){

arr[i]=i*i;

}

}

returnarr;

}

intmain(){

intsize=5;

int*myArray=createArray(size);

if(myArray!=NULL){

for(inti=0;isize;i++){

printf(%d,myArray[i]);

}

free(myArray);

}

return0;

}

```

程序的输出结果是()。

A.014916

B.12345

C.00000

D.编译错误

6.有以下代码:

```c

#includestdio.h

voidswap(intx,inty){

inttemp=x;

x=y;

y=temp;

}

intmain(){

inta=3,b=5;

swap(a,b);

printf(a=%d,b=%d\n,a,b);

return0;

}

```

程序的输出结果是()。

A.a=3,b=5

B.a=5,b=3

C.a=0,b=0

D.编译错误

7.有以下代码:

```c

#includestdio.h

int*func(){

inta=10;

returna;//返回局部变量的地址

}

intmain(){

int*p=func();

printf

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档