以下程序段运行后*(++p)的值为() char a[5]=”work”; char *p; p=a;A、‘w’B、存放’w’的地址C、’o’D、存放’o’的地址

题目

以下程序段运行后*(++p)的值为() char a[5]=”work”; char *p; p=a;

  • A、‘w’
  • B、存放’w’的地址
  • C、’o’
  • D、存放’o’的地址
参考答案和解析
正确答案:C
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

若有说明语句

char a[]="It is mine";

char *p="It is mine";

则以下不正确的叙述是

A.a+1表示的是字符t的地址

B.p指向另外的字符串时,字符串的长度不受限制

C.p变量中存放的地址值可以改变

D.a中只能存放10个字符


正确答案:D

第2题:

有以下程序并includeincludefun(char * w,int n){char t,*s1,*s2; s1=w;s2=

有以下程序 并include<stdio.h> #include<string.h> fun(char * w,int n) { char t,*s1,*s2; s1=w; s2=w+n-1; while(s1<s2) { t=*s1++; * s1=*s2--; * s2=t; } } main() { char p[]="1234567"; fun(p,strlen(p)); puts(p); } 程序运行后的输出结果是( )

A.1234567

B.7654321

C.1711717

D.7177171


正确答案:C

第3题:

有以下函数:

fun(char *p)

{return p;}

该函数的返回值是

A.无确切值

B.形参p中存放的地址值

C.一个临时存储单元的地址

D.形参p自身的地址值


正确答案:B

第4题:

下列程序运行后,输出结果是______。 include include fun(char *w ,int

下列程序运行后,输出结果是______。 #include <stdio. h> #include <string. h> fun (char *w ,int n) { char t,*s1,*s2; s1=w; s2=w+n-1; while (s1<s2) { t=*s1++; *s1=*s2--; *s2=t; } } main () { char *p; p="1234567"; fun (p, strlen (p)); puts (p); }

A.1234567

B.7654321

C.1711717

D.7177171


正确答案:C

第5题:

有以下程序: matin() { char * s[]={"one", "two", "three"}, *p; p=s[1]; printf("% c, % s\n", *(p+1),s [o]); } 执行后的输出结果是______。

A.n, two

B.t, one

C.w, one

D.o, two


正确答案:C
解析:程序定义了一个指针数组s和一个字符型指针变量p。s有3个元素,其中s[0]指向字符串"one,s[1]指向字符串"two",s[2]指向字符串"three",执行p=s[1]后p指向字符串"two",所以*(p+1)=w。

第6题:

有以下程序:

void funl(char*p)

{ char*q;

q=P;

while(*q!='\O')

{(*q)++;q++;}

}

main

{ char a[]={"Program"),*P;

p=&a[3];funl(p);

printf("%s\n",a);

}

程序执行后的输出结果是( )。

A.Prohsbn

B.Prphsbn

C.Progsbn

D.Program


正确答案:A
本题中使用了函数的调用,由{unl函数中的while循环可知,循环的作用是为了把q所指向的内容增加l,而从主函数传到函数时是从下标为3开始传,因此当调用函数执行完后,传过去的字符串为'hsbn',前面不变。

第7题:

有以下函数 char *fun(char*p) { return p; } 该函数的返回值是_____。

A.无确切的值

B.形参p中存放的地址值

C.一个临时存储单元的地址

D.形参p自身的地址值


正确答案:B
解析:p本身就是一个字符型指针变量,返回p也就是返回变量p中存放的地址值。

第8题:

有以下程序 main( ) { char *s[ ]={"one","two","three"},*p; p=s[1]; printf("%c,%s\n",*(p+1),s[0]); } 执行后输出结果是

A.n,two

B.t,one

C.w,one

D.o,two


正确答案:C
解析:p首先指向s中的第二个字符串(p=s[1])的起始位置,其中输出语句printf的功能是输出p所指向的后一个字符,及数组元素s[0]。

第9题:

以下程序的输出结果是______。includeincludefun(char*w,int n){ char t,*s

以下程序的输出结果是______。 #include<stdio.h> #include<string.h> fun(char*w,int n) { char t,*s1,*s2; s1=w;s2=w+n-1; while(s1<s2) { t=*s1++; *s1=*s2-; *s2=t; } } main() { char*p; p="1234567"; fun(p,strlen(p)); puts(p); }

A.1234567

B.7654321

C.1711717

D.7177171


正确答案:C
解析:在子函数fun中,s1为字符串w的起始地址,s2为字符串的结束地址(字符'\0'除外),当执行循环结束循环, w="1711717"。

第10题:

以下程序段运行后*(++p)的值为()char a[5]=”work”;char *p;p=a;

A.‘w’

B.存放’w’的地址

C.’o’

D.存放’o’的地址


参考答案:C

更多相关问题