马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
Q:若有double *p,x[10];int i=5;
使指针变量p指向元素x[5]的语句是
A.p=&x[i];
B.p=x;
C.p=x[i];
D.p=&(x+i);
B× p=x是指向数组首元素地址
A.#include <stdio.h>
#include <math.h>
int main()
{
double *p,x[10];int i=5;
p=&x[i];
printf("p=%lf\n",p);//p=0.000000
printf("*p=%lf\n",*p);//*p=0.000000
printf("x[0]=%lf\n",x[0]);//x[0]=0.000000
return 0;
}
B.#include <stdio.h>
#include <math.h>
int main()
{
double *p,x[10];int i=5;
p=x;
printf("p=%lf\n",p);//p=0.000000
printf("*p=%lf\n",*p);//*p=0.000000
printf("x[0]=%lf\n",x[0]);//x[0]=0.000000
return 0;
}
C.#include <stdio.h>
#include <math.h>
int main()
{
double *p,x[10];int i=5;
p=x[i];
printf("p=%lf\n",p);
printf("*p=%lf\n",*p);
printf("x[0]=%lf\n",x[0]);
return 0;
}
7 11
[Error] cannot convert 'double' to 'double*' in assignment
D.#include <stdio.h>
#include <math.h>
int main()
{
double *p,x[10];int i=5;
p=&(x+i);
printf("p=%lf\n",p);
printf("*p=%lf\n",*p);
printf("x[0]=%lf\n",x[0]);
return 0;
}
7 14
[Error] lvalue required as unary '&' operand
[错误]左值需要作为一元'&'操作数 |