C语言试题选择题及解答

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

★第1 题:

阅读程序,选择程序的运行结果___A___。

#include

main()

{ int x;

x=try(5);

printf(“%d\n”, x);

}

try(int n)

{ if(n>0) return(n*try(n-2));

else return(1);

}

A. 15

B. 120

C. 1

D. 前面3个答案均是错误的

第2 题:

在下列结论中,只有一个是正确的,它是___A___。

A. 递归函数中的形式参数是自动变量

B. 递归函数中的形式参数是外部变量

C. 递归函数中的形式参数是静态变量

D. 递归函数中的形式参数可以根据需要自己定义存储类型

★第3 题:

阅读程序,选择程序的输出结果__A___。

#include

f(int x, int y)

{ return(y-x);

}

main()

{ int (*g)(int,int);

int a=5, b=6, c=2;

g=f;

c=(*g)(a,b);

printf(“%d\n”, c);

}

A. 1

B. 2

C. 3

D. 前面3个答案均是错误的

第4 题:

阅读程序,选择程序的输出结果__D___。#include

char *p=”abcdefghijklmnopq”;

main()

{ while(*p++!=’e’) ;

printf(“%c\n”, *p);

}

A. c

B. d

C. e

D. f

★第6 题:

阅读程序,选择程序的输出结果___D___。#include

void prtv(int *x)

{ printf(”%d\n”, ++*x);

}

main()

{ int a=25;

prtv(&a);

}

A. 23

B. 24

C. 25

D. 26

第7 题:

阅读程序,选择程序的输出结果___B___。

#include

main()

{ static char a[ ]= ”language”, b[]=”program”;

char *ptr1=a, *ptr2=b;

int k;

for(k=0; k<7; k++)

if(*(ptr1+k)==*(ptr2+k))

printf(”%c”, *(ptr1+k));

}

A. gae

B. ga

C. language

D. 有语法错误

★第8 题:

函数调用strcat(strcpy(str1, str2), str3)的功能是__C___。

A. 将串str1复制到串str2中,然后再连接到str3之后

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

C. 将串str2复制到串str1中,然后再将串str3连接到串str1之后

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

★第9 题:

设有以下程序段,则在main函数中使用语句__D___是无意义的。main()

{ int min();

int a, b, c, (*p)();

p=min;

}

min(x, y)

int x, y;

{

}

A. printf(”%d\n”, min(a,b));

B. c=min(a, b);

C. c=(*p)(a,b);

D. p++;

第10 题:

已知static int a[2][3]={2,4,6,8,10,12}; 正确表示数组元素地址的是__A___。

A. *(a+1)

B. *(a[1]+2)

C. a[1]+3

D. a[0][0]

第11 题:

已知int i, x[3][4]; 则不能将x[1][1]的值赋给变量i的语句是___C___。

A. i=*(*(x+1)+1)

B. i=x[1][1]

C. i=*(*(x+1))

D. i=*(x[1]+1)

★第12 题:

当c的值不为0时,在下列选项中能够将c的值赋给变量a、b的是

___C____.

A. c=b=a;

B. (a=c)||(b=c);

C. (a=c)&&(b=c);

D. a=c=b;

第13 题:

函数的功能是交换变量x和y中的值,且通过正确调用返回交换的结果。能正确执行此功能的函数是___D___。

A. funa(int *x, int *y)

{ int *p;

*p=x; *x=*y; *y=*p;

}

B. funb(int x, int y)

{ int t;

t=x; x=y; y=t;

}

C. func(int *x, int *y)

{ *x=*y; *y=*x;

}

D. fund(int *x, int *y)

{ *x=*x+*y; *y=*x-*y; *x=*x-*y;

}

第14 题:

已知int x[]={1,3,5,7,9,11}, *ptr=x; 则不能正确引用数组元素的语句是___B___。

A. *(ptr--)

B. *(--ptr)

C. *(ptr++)

D. *(++ptr)

第15 题:

已知int *ptr1, *ptr2; 均指向同一个int类型一维数组中的不同

相关文档
最新文档