77范文网 - 专业文章范例文档资料分享平台

数组和函数(2)

来源:网络收集 时间:2018-12-01 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

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

答案c

66、下面程序应能对两个整型变量的值进行交换。以下正确的说法是________。 main()

{ int a=10,b=20;

printf(\ swap(&a,&b);

printf(\}

swap(int p,int q) { int t;

t=p;p=q;q=t; } A、该程序有错,只要将swap()函数中的形参p和q以及t均定义为指针(执行语句不变)即可

B、该程序完全正确

C、该程序有错,只要将语句swap (&a,&b);中的参数改为a,b即可 D、以上说法都不正确 答案d

67、以下程序有错,错误原因是________。 main()

{ int *p,i;char *q,ch; p=&i; q=&ch; *p=40; *p=*q;

…… } A、q没有指向具体的存储单元,所以*q没有实际意义

B、p和q的类型不一致,不能执行*p=*q;语句

C、*p中存放的是地址值,因此不能执行*p=40;语句

D、q虽然指向了具体的存储单元,但该单元中没有确定的值,所以不能执行*p=*q;语句 答案d

68、若已定义int a =5;下面对(1),(2)两个语句的正确解释是________。

(1)int *p=&a; (2)*p=a;

A、(1)在对P进行说明的同时进行初始化,使P指向a

(2)将变量a的值赋给指针变量p

B、语句(1)和(2)中的*P含义相同,都表示给指针变量P赋值

C、(1)和(2)语句的执行结果,都是把变量a的地址值赋给指针变量p

D、(1)在对P进行说明的同时进行初始化,使P指向a

(2)将变量a的值赋于*p 答案d

69、若有说明:int *p,m=5,n;以下正确的程序段是________。 A、scanf(\ *p=n; B、p=&n;

scanf(\ C、p=&n; scanf(\D、p=&n; *p=m; 答案d

70、若有说明:int *p1,*p2,m=5,n;以下均是正确赋值语句的选项是________。 A、p1=&m;p2=&n;*p1=*p2; B、p1=&m;*p2=*p1; C、p1=&m;p2=p1; D、p1=&m;p2=&p1; 答案c

71、已有变量定义和函数调用语句:int a=25; print_value(&a);下面函数的正确输出结果是________。

void print_value(int *x) { printf(\ A、25 B、23 C、24 D、26 答案d

9

72、下面判断正确的是________。 A、char str[10]={\等价于char str[10];str[]={\

B、char[4]=\等价于charc[4]=d[4]=\C、char *s=\等价于char *s;s=\D、char *a=\等价于char *a; *a=\答案c

73、下面能正确进行字符串赋值操作的是________。

A、char s[5]={'A','B','c','D','E'}; B、char *s; scanf(\C、char *s; s=\D、char s[5]={\答案c

74、设P1和p2是指向同一个字符串的指针变量,c为字符变量,则以下不能正确执行的赋值语句是________。 A、pl=p2; B、p2=c;

C、c=*pl*(*p2); D、c=*pl+*p2; 答案b

75、设有下面的程序段:chars[]=\*p;p=s;则下列叙述正确的是________。 A、s数组长度和p所指向的字符串长度相等

B、s和p完全相同

C、数组s中的内容和指针变量p中的内容相等

D、*p与s[0]相等 答案d

76、下面程序段的运行结果是_________。 char *format=\int a=1,b=10; a+=b;

printf(format,\A、format,\B、以上结果都不对

10

C、a+=b,a=ll,b=10 D、for,\答案c

77、下面程序段的运行结果是_________。 char *p=\int a=111,b=10,c; c=a%b;p+=3; printf(p,c,a,b); A、a=lll,b=10 B、a=1,b=111 C、以上结果都不对 D、1,a=111,b=10 答案b

78、以下正确的程序段是________。 A、char *p;

scanf(\

B、char str[20],*p=str; scanf(\C、char str[20]; scanf(\ D、char str[20]; scanf(\答案c

79、以下正确的程序段是________。 A、char str[10],*st=\B、char st1[]=\C、char str[10]=\D、char str1[]=\2); 答案c

80、下面程序段的运行结果是________。 char str[]=\printf(\A、字符'C'的地址 B、0 C、字符'C' D、67 答案b

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库数组和函数(2)在线全文阅读。

数组和函数(2).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/328335.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: