题目内容

以下程序有错,错误原因是 。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 *p,m=5,n;则以下正确的程序段是 。

A. p=&n; scanf("%d",&p);
B. p=&n; scanf("%d",*p);
C. scanf("%d",&n); *p=n;
D. p=&n; *p=m;

若有说明int *p1,*p2,m=5,n;以下正确的程序段是 。

A. p1=&m;p2=&p1;
B. p1=&m;p2=&n;*p1=*p2;
C. p1=&m;p2=p1;
D. p1=&m;*p2=*p1;

已有变量定义和函数调用语句int a=25;print_value(&A.;下面函数输出的正确结果是。void print_value(int *x){printf("%d\n",++*x);}

A. 23
B. 24
C. 25
D. 26

下面判断正确的是 。

A. char *a="china";等价于char *a;*a="china";
B. char str[10]={"china"};等价于char str[10];str[]="china";
C. char *s="china";等价于char *s;s="china";
D. char c[6]="china",d[6]="china";等价于char c[6]=d[6]="china";

答案查题题库