数组和函数

发布时间 : 星期二 文章数组和函数更新完毕开始阅读

A、int a[5]; int *p=a=1000 ; B、int a[5],*p; p=a; C、int a[5]; int *p1,*p2=a; *p1=*p2; D、int a[5],*p; p=&a; 答案b

37、若有以下定义和语句,则能正确表示a数组元素地址的表达式是________。 double a[5],*p1; p1=a; A、a B、&a[5] C、p1+5 D、*p1 答案a

38、若有以下定义,且0<=i<5,则对a数组元素的非法引用是________。 int a[5],*p=a; A、*(p+i) B、a[i] C、*(a+i) D、*(&a+i) 答案d

39、若有以下定义,则数值不为3的表达式是________。

int x[10]={0,1,2,3,4,5,6,7,8,9},*p1; A、p1=x+3,*p1++ B、p1=x+2,*++p1 C、p1=x+2,*(p1++) D、x[3]

答案c

40、若有以下定义,则能正确的程序段是________。 int *p,*s,i,j; char *q,ch; A、main()

5

{p=&i; q=&ch; p=q;

....} B、main() {*p=1.00; ....} C、main() {p=&ch; s=p; .....} D、main() {p=&i; q=&ch; *p=40;*q=*p; ....} 答案d

41、设有以下定义:

char *cc[22]={\则正确的叙述是________。

A、cc数组的两个元素中各自存放字符串\和\的首地址

B、cc数组元素的值分别是\和\C、cc数组的两个元素中分别存放的是含4个字符的一维字符数组的首地址 D、cc是指针变量,它是指向两个数组元素的字符型一维数组 答案a

42、以下正确的叙述是________。

A、C语言允许main函数带形参,形参名只熊是argc和argv

B、若有说明:main (int argc ,char *argv),则形参arc的值必须大于i

C、当main函数带有形参时,传给形参的值只能从命令行中得到

D、C语言允许main函数带形参,且形参个数和形参名均可由用户指定 答案c

43、main函数的正确说明形式是________。 A、main(int argc,char argv) B、main(int abc,char **abv)

C、main(int c,char v[]) D、main(int argc,char *argv) 答案b 44

:char

向int型数据的指针

C、ptr是指向函数的指针,该函数返回一个int型数据

D、ptr是指向一维数组的指针变量 答案c

48、若有函数max(a,b),并且已使函数指针变量p指向函数max,当调用该函数时,正确的调用方法是________。 A、*pmax(a,b); B、*p(a,b); C、(*p)(a,b); D、(*p)max(a,b); 答案c

:char

49、已有函数max(a,b),为了让函数指针变量P指向函数max,正确的赋值方法是________。 A、p=max; B、*p=max(a,b); C、*P=max; D、p=max(a,b); 答案a

50、已有定义int (*p)();指针p可以

*language[]={\AL\VA\则表达式*language[1]>*language[3]比较的是________。

A、字符串BASIC和字符串JAVA B、字符串FORTRAN和字符串PASCAL C、字符B和字符J D、字符F和字符P 答案c 45

*language[]={\AL\\VA\则language[2]的值是________。 A、一个字符串 B、一个地址 C、一个不定值 D、一个字符 答案b 46

:char

*language[]={\AL\VA\则以下不正确的叙述是________。

A、language是一个字符型指针数组,它包含5个元素,每个元素都是一个指向字符串变量的指针

B、language+2表示字符串\的首地址

C、*language[2]的值是字母P

D、language是一个字符型指针数组,它包含5

个元素,其初值分别

\VA\C\答案d

47、语句int (* ptr)();的含义是________。 A、ptr是指向int型数据的指针变量

B、ptr是一个函数名,该函数的返回值是指

6

________。

A、表示函数的类型 B、指向函数的入口地址 C、表示函数返回值的类型 D、代表函数的返回值 答案b

51、以下定义语句中正确的是________。 A、float *a,b=&a; B、int a=10,*b=&a; C、char a='A'b='B'; D、float a=b=10.0;

答案b

52、若有以下说明和语句,int c[4][5],(*p)[5];p=c;能正确引用c数组元素的是________。 A、*(p[0]+2) B、*(p+1)+3

C、p+1 D、*(p+3) 答案a

53、有以下程序 main()

{ int a=7,b=8,*p,*q,*r; p=&a;q=&b; r=p;p=q;q=r;

printf(\}

程序运行后的输出结果是________。 A、7,8,8,7 B、8,7,7,8 C、8,7,8,7 D、7,8,7,8 答案b

54、有以下程序 main() {

int

a[]={1,2,3,4,5,6,7,8,9,10,11,12,},*p=a+5,*q=NULL;

*q=*(p+5);

printf(\

}

程序运行后的输出结果是________。 A、5 10 B、6 11 C、报错 D、6 6 答案c

55、已有定义:int i,a[10],*p;,则合法的赋值语句是________。 A、p=a+2; B、p=a[2]+2; C、p=100; D、p=a[5]; 答案a

56、若有说明语句:int a,b,c,*d=&c;则能正确从键盘读入三个整数分别赋给变量a、b、c的语句是________。

A、scanf(\B、scanf(\C、scanf(\D、scanf(\答案a

57、有以下程序 int *f(int *x, int *y) { if (*x < *y) return x; else

return y; }

main()

{ int a=7,b=8,*p,*q, *r; p=&a; q=&b;

r = f(p,q);

printf(\}

执行后输出结果是________。 A、8,7,7 B、7,8,7 C、8,7,8 D、7,8,8 答案b

58、有以下程序,输出结果为________。 void fun(char *a, char *b) { a=b; (*a)++; } main()

{ char c1='A',c2='a',*p1,*p2; p1=&c1; p2=&c2; fun(p1,p2); printf(\}

A、Ab B、Bb C、aa D、Aa 答案a

59、若程序中已包含头文件stdio.h,以下选项中,正确运用指针变量的程序段是________。 A、long *L;*L='\\0'; B、char t='m', *c=&t;

7

C、float *f=NULL;*f=10.5; D、int *i=NULL;scanf(\ 答案b

60、有以下程序段 main()

{ int a=5,*b,**c; c=&b; b=&a; ……

}

程序在执行了c=&b;b=&a;语句后,表达式:**c的值是________。 A、变量b中的值 B、变量b的地址 C、变量a中的值 D、变量a的地址 答案c

61、已定义以下函数 fun(char *p2, char *p1)

{ while((*p2=*p1)!='\\0'){ p1++;p2++; } } 函数的功能是________。

A、将p1所指字符串复制到p2所指内存空间

B、检查p1和p2两个指针所指字符串中是否有'\\0'

C、将p1所指字符串的地址赋给指针p2 D、对p1和p2两个指针所指字符串进行比较 答案a

62、有以下程序 #include main()

{ char *p=\ printf(\

}

程序运行后的输出结果是________。 A、6 B、12 C、15 D、5 答案d

8

63、有以下程序

#include main()

{ char *p,*q;

p=(char *)malloc(sizeof(char)*20); q=p; scanf(\}

若从键盘输入:abc def<回车>,则输出结果是________。 A、def def B、d d C、abc def D、abc d 答案a

64、以下程序的运行结果是________。 sub(int x,int y,int *z) { *z=y-x;} main() { int a,b,c; sub(10,5,&a);

sub(7,a,&b); sub(a,b,&c);

printf(\}

A、-5,-12,-17 B、-5,-12,-7 C、5,-2,-7 D、5,2,3 答案b

65、执行以下程序后,a的值为0,b的值为________。 main()

{ int a,b,k=4,m=6,*p1=&k,*p2=&m; a=p1==&m; b=(-* p1)/(*p2)+7; printf(\ printf(\} A、6 B、10 C、7 D、5

联系合同范文客服:xxxxx#qq.com(#替换为@)