[单选题]

以下程序有错,错误的原因是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=

[单选题]以下程序有错,错误原因是 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,c

    [单选题]以下程序有错,错误原因是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,c

    [单选题]以下程序有错,错误原因是( )。 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

    [单选题]以下程序段有错,错误原因是______。 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() { union { char ch[2]; int d

    [单选题]有以下程序 main() { union { char ch[2]; int d; }s; s.d=0x4321; printf("%x,%x/n",s.ch[O],s.ch[1]); } 在16位编译系统上,程序执行后的输出结果是______。A.21,43B.43,21C.43,00D.21,00

  • 查看答案
  • 有以下程序:main(){ union { char ch[2]; Int d;

    [单选题]有以下程序:main(){ union { char ch[2]; Int d; } s; s.d=0x4321; printf("%x,%x/n",s.ch[0],s.ch[1]);}在16位编译系统上,程序执行后的输出结果是( )。A.21,43 B.43,21 C.43,00 D.21,00

  • 查看答案
  • 有以下程序 main() { union { char ch[2]; int d

    [单选题]有以下程序 main() { union { char ch[2]; int d; }s; s.d=0x4321; printf("%x,%x/n",s.ch[O],s.ch[1]); } 在16位编译系统上,程序执行后的输出结果是______。A.21,43B.43,21C.43,00D.21,00

  • 查看答案
  • 有以下程序#include main(){ char *p,*q;p=(char

    [单选题]有以下程序include main(){ char *p,*q;p=(char*)malloc(sizeof(char)*20);q=p;scanf有以下程序 #include <stdlib.h> main() { char *p,*q; p=(char*)malloc(sizeof(char)*20); q=p; scanf("%s %s",p,q); printf("%s %s/n",p,q); } 若从键盘输入:abc def<回车>, 则输出结果是A.def defB.abc

  • 查看答案
  • 有以下程序main(){ union{ char ch[2];int d;} s

    [单选题]有以下程序main(){ union{ char ch[2];int d;} s;s.d=0x4321;printf(" % x, % x/n",s.ch[0],s.ch[1]);}在 16 位编译系统上,程序执行后的输出结果是A.)21,43B.)43,21C.)43,00D.)21,00

  • 查看答案
  • 有以下程序: point(char *p){p£«=3;} main() {ch

    [单选题]有以下程序: point(char *p){p+=3;} main() {char b[4]={'a','b','c','d',},*p=b; point(p);printf("%c/n",*p); } 程序运行后的输出结果是 ______。A.aB.bC.cD.d

  • 查看答案
  • 以下程序有错,错误的原因是main(){int *p,i;char *q,ch;