以下程序有错,错误的原因是main(){ int *p,i;char *q,ch; p=i; q=ch; *p=40; *p=*q; ......}A.p和q的类型不一致,不能执行*p=*q;语句B.*p中存放的是地址值,因此不能执行*p=40;语句C.q没有指向具体的存储单元,所以*q没有实际意义D.q虽然指向了具体的存储单元,但该单元中没有确定的值,所以执行*p=*q;没有意义,可能会影响后面语句的执行结果

以下程序有错,错误的原因是main(){ int *p,i;char *q,ch; p=&i; q=&ch; *p=40; *p=*q; ......}A.p和q的类型不一致,不能执行*p=*q;语句B.*p中存放的是地址值,因此不能执行*p=40;语句C.q没有指向具体的存储单元,所以*q没有实际意义D.q虽然指向了具体的存储单元,但该单元中没有确定的值,所以执行*p=*q;没有意义,可能会影响后面语句的执行结果


相关考题:

有以下程序void fun1(char *p){ char *q;q=p;while(*q!='\0'){ (*q)++; q++; ) }}main(){ char a[]={"Program"),*p;p=a[3];fun1(p);printf(" % s\n",a);}程序执行后的输出结果是A)ProhsbnB)PrphsbnC)ProgsbnD)Program

若有说明:int n=2,*p=n,*q=p;,则以下非法的赋值语句是( )。A.p=q B.*p=*q C.n=*q D.p=*n

有以下程序: void fun1(char*p) {char*q; q=P; while(*q!='\0') { (*q)++;q++;} } main() {char a[]={"Program"),*p; p=&a[3];funl(p);printf("%s\n",A); } 程序执行后的输出结果是( )。A.ProhsbnB.PrphsbnC.ProgsbnD.Program

设有定义:int n=0,*p=n,**q=p;,则以下选项中,正确的赋值语句是( )。A.p=1;B.*q=2;C.q=p;D.*p=5;

设有定义int n=0,*p=n,**q=p;,则下列选项中正确的赋值语句是A.p=1;B.*q=2;C.q=p;D.*p=5;

双链表的每个结点包括两个指针域。其中rlink指向结点的后继,llink指向结点的前驱,如果要在p所指结点后插入q所指的新结点,操作序列正确的是( )。A.p↑.rlinkt↑llink:=q;p↑.rlink:=q;q↑.llink:=p;q↑.rlink:=p↑.rlink;B.p↑.llinkl↑.rlink:=q;p↑. llink:=q;q↑.rlink:=p;q↑.llink:=p↑.llink;C.q↑.llink:=p;q↑.rlink:=p↑.rlink;p↑.rlinkl.llink:=q;p↑.rlink:=q↑;D.q↑.rlink:=p;q↑.llink:=p↑.llink;p↑.llink↑.rlink:=q;p↑,llink:=q;

若有一些定义和语句 include int a=4,b=3,*p,*q,*w; p=a; q=b; w=q; q 若有一些定义和语句 #include <stdio.h> int a=4,b=3,*p,*q,*w; p=a; q=b; w=q; q=NULL; 则以下选项中错误的语句是A.*q=0;B.w=p;C.*p=va;D.*p=*w;

若有定义语句:int a[4][10],* P,* q[4];且0=i4,则错误的赋值是( )。A.P=aB.q[i]=a[i]C.p=a[i]D.p=a[2][1]

有以下程序: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.ProhsbnB.PrphsbnC.ProgsbnD.Program

设有定义:int n=0,*p=n,**q=p;,则以下选项中,正确的赋值语句是 ______。A.p=1;B.*q=2C.q=pD.*p=5

有以下程序: include void funl (char * p){char * q; q=p; while( *q! ='\0') } (*q) 有以下程序: #include <stdio.h>void funl (char * p){ char * q; q=p; while( *q! ='\0') } (*q) ++;q++;}mains( ){ char a[ ] = { "Program" } , * p; p = a[3]; fun1 (p); printf("% s \n" ,a);}程序执行后的输出结果是( )。A.ProhsbnB.PrphsbnC.ProgsbnD.Program

以下程序段有错,错误原因是______。 main() { int *p,i;char *q,ch; p=i;q=ch;*p=40;*p=*q; }A.p和q的类型不一致,不能执行*p=*q;语句B.*p中存放的是地址值,因此不能执行*p=40;语句C.q没有指向具体的存储单元,所以*q没有实际意义D.q虽指向了具体的存储单元,但该单元中没有确定的值,所以不能执行*p=*q;语句

若有定义语句:int u[4][10],*P,*q[4];且0≤i4,则错误的赋值是A.p=aB.q[i]=a[i]C.p=a[i]D.p=&a[2][1]

若有以下定义和语句:includeinta=4,b=3,*p,*q,*w;p=a; q=b; w=q; q=NULL;则 若有以下定义和语句: #include<stdio.h> int a=4,b=3,*p,*q,*w; p=a; q=b; w=q; q=NULL; 则以下选项中错误的语句是( )。A.*q=0;B.w=p;C.*p=a;D.*p=*w;

以下程序有错,错误原因是main(){ int *p,i;char *q,ch; p=i;q=ch;*p=40;*p=*q;... }A.p和q的类型不一致,不能执行*p=*q;语句B.*p中存放的是地址值,因此不能执行*p=40;语句C.q没有指向具体的存储单元,所以*q没有实际意义D.q虽然指向了具体的存储单元,但该单元中没有确定的值,所以执行*p=*q;没有意义,可能会影响后面语句的执行结果

若有以下定义和语句 int a=4.b=3.* p, * q, * w; p=a;q= b; w=q;q=NULL; 则以下选项中错误的语句是A.*q=0;B.w=p;C.*p=a;D.*p=* w;

设有定义:int n=0,*p=n,**q=p;则以下选项中,正确的赋值语句是( )A.p=1B.*q=2;C.q=p;D.*p=5;

单向链表的每一个节点都有一个指向它的后续节点的指针link,现有节点P和q,要将q插入节点p的后面,正确的操作应该是A.q↑.link: =p↑.link; p↑.link: =q;B.q: =p↑.link; p↑.link:=q↑.link;C.q↑.link: =p; p↑.link: =q;D.q:=p↑.link; p:=q↑.link;

假定已建立以下链表结构,且指针P和q已指向如图所示的结点:则以下选项中可将q所指结点从链表中删除并释放该结点的语句组是( )。A.p一next=q一next;flee(q);B.p=q一next;free(q);C.p=q;free(q);D.(*p).next=(幸q).next;ffee(p);

在一个单链表中,若要在指针q所指结点的后面插入一个由指针p所指向的结点,则执行下面哪条语句?( )A.q->next=p-next;p=qB.p->next=q->next;q=pC.q->next=p->next;p->next=qD.p->next=q->next;q->next=p

若有以下定义和语句 int a=4,b=3,*p, *q, *w; p=a; q=b; w=q; q=NULL; 则以下选项中错误的语句是A.*q=0B.w=pC.*p=a;D.*p=*w;

若有一些定义和语句include inta=4, b=3, *p,*q,*w;p=a;q=b;w=q;q=NULL;则 若有一些定义和语句 #include <stdio.h> int a=4, b=3, *p,*q,*w; p=a; q=b; w=q; q=NULL; 则以下选项中错误的语句是A.*q=0;B.w=p;C.*p=a;D.*p=*w;

以下程序有错,错误原因是( )。 main() { int *p,i; char *q,ch; p=i; q=ch; *p=40; *p=*q; ┇ }A.p和q的类型不一致,不能执行*p=*q;语句B.*p中存放的是地址值,因此不能执行*p=40;语句C.q没有指向具体的存储单元,所以*q没有实际意义D.q虽然指向了具体的存储单元,但该单元中没有确定的值,所以执行语句*p=*q;没有意义,可能会影响后面语句的执行结果

假定建立了以下链表结构,指针p、q分别指向如图所示的结点,则以下可以将q所指结点从链表中删除并释放该结点的语句组是 ( )A.free(q);p->Next=q->next;B.(* p).next=(* q).nexy;free(q);C.q=(* q).next;(* p).next=q;free(q);D.q=q->next;p->next=q;p=p->next;free(p);

下列程序的功能是输出数组中的最大值,其中用指针q指向该元素,在if语句中判断表达式应该是 ______。 #include<iostream.h> void main(){ int a[10]={6,7,2,9,1,10,5,8,4,3); int *p=a,*q=a; while(p-a<10){ if(_____)q=p; { p++; } cout<<”max=”<<*q; }A.ap>AqB.*p>*qC.p>qD.p-a>p-q

假设有以下定义:int a[5]={1,2,3,4,5},i=3,*p=a , *q=a; 则不能正确执行的语句是()A、i=*p +*q;B、 a=i;C、*p = *(a+i);D、i = *p**(q+2);

单选题以下选项中,不能对主函数中变量i和j的值进行交换的程序是(  )。A#include stdio.hvoid swap(int *p, int *q){ int *t; *t = *p; *p = *q; *q = *t;}main(){ int i=10, j=20,*a=i,*b=j; swap(a,b); printf(i=%d j=%d,i,j);}B#include stdio.hvoid swap(int *p, int *q){ int t; t = *p; *p = *q; *q = t;}main(){ int i=10,j=20,*a=i,*b=j; swap(a,b); printf(i=%d j=%d,i,j);}C#include stdio.h#include stdlib.hvoid swap(int *p, int *q){ int *t; t = (int *)malloc(sizeof(int)); *t = *p; *p = *q; *q = *t; free(t);}main(){ int i=10,j=20; swap(i,j); printf(i=%d j=%d,i,j);}D#include stdio.hvoid swap( int *p, int *q){ int t; t = *p; *p = *q; *q = t;}main(){ int i=10,j=20,*x=i,*y=j; swap(x,y); printf(i=%d j=%d,i,j);}