数组和函数 联系客服

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

答案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

81、下面程序段运行的结果是________。 char *p=\p+=3;

printf(\A、12 B、7 C、4 D、8 答案c

82、下面程序段的运行结果是________。 char a[]=\p=a;

while(*p!='u'){ printf(\A、language B、langUAGE C、LANG

D、LANGUAGE 答案c

83、若有语句:char s1[]=\则对库函数strcpy的正确调用是:________。 A、strcpy(s3,\B、strcpy(s4,\C、strcpy(s1,s2); D、strcat(s3,\答案b

84、以下与库函数strcpy(char *p1,char *p2)功能不相等的程序段是________。 A、strcpy1(char *p1,char *p2) { while(*p1++=*p2++);} B、strcpy1(char *p1,char *p2) { while((*p1++=*p2++)!='\\0');} C、strcpy2(char *p1,char *p2)

{ while((*p1==*p2)!='\\0'){p1++;p2=++;}} D、strcpy1(char *p1,char *p2) { while(*p2) *p1++=*p2++;} 答案d

85、以下与库函数strcmp(char *s,char *t)的

11

功能相等的程序段是________。 A、strcmp2(char *s,char *t) { for( ;*s++==*t++;) if(!*s) return 0; return(*s-*t); }

B、strcmp4(char *s,char *t) { for( ;*s==*t;s++,t++) if(!*s) return 0; return (*t-*s); }

C、strcmp3(char *s,char *t) { for( ;*t==*s;)

{ if(!*t) return 0; t++; s++;} return(*s-*t); }

D、strcmp1(char *s,char *t) { for( ;*s++==*t++;)

if(*s=='\\0') return 0; return (*s-*t); } 答案c

86、当运行以下程序时,从键盘输入Happy! (表示回车),则下面:程序的运行结果是________。 #preclude #include main()

{ char str[10],*p=str; gets(p);

printf(\}

stre(char str[])

{ int num=0;

while(*(str+num)!='\\0') num++; return(num); } A、5 B、6 C、10 D、7 答案b

87、下面程序的运行结果是________。 #include main() { static s1+=2;s2+=2;

printf(\}

A、零 char

a[]=\ char *p1,*p2; int k; p1=a;p2=b;

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

if(*(p1+k)==*(p2+k)) printf(\}

A、gae B、有语法错 C、ga D、Language 答案a

88、 下面程序的运行结果是________。#include void delch(char *s) { int i,j;

char *a;

for(i=0,j=0;a[i]!='\\0';i++) if(a[i]>='0'&&a[i]<='9') { s[j]=a[i];j++;} s[j]='\\0'; }

main()

{ char *item=\ delch(item); printf(\}

A、a34 B、34 C、a34bc D、abc 答案b

89、下面程序的运行结果是________。 #include #include main()

{ char *s1=\ char *s2=\

B、负数 C、不确定的值 D、正数

答案b

90、当运行以下程序时,从键盘输入MyBooK (表示回车)则下面程序的运行结果是________。 #include char fun(char *s)

{ if(*s<='Z'&&*s>='A') *s+=32; return *s; }

main()

{ char c[80],*p; p=c;

scanf(\

while(*p){ *p=fun(p);putchar(*p);p++;} printf(\

} A、my book B、My Book C、mybook D、mY bOOk 答案c

91、下面程序的运行结果是________。 #include #include fun(char *s) { char a[7]; s=a;

strcpy (a,\

}

main() { char *p; fun(p); puts(p); }

A、look_ _

12