C、a++ //这个先取a的值,再使a自加1,而a的值是a[0]的地址,因此本题答案就是这个。D、++p //这个表示先使p自加,再取值。p指向a[0],自加后指向a[1],因此++p也是a[1]的地址。如果这么写:b = a++ 那b指的是a[0]的地du址。如果:a++;b = a;这时b就已经是指向a[1]...
选C 因为 a数组是常量 不能用 ++a 其他的都是可以的
A、*p ---表示取p指针指向的单元的值,即表示取数组a的首个元素a[0]的值。B、a[10] ---因为数组a一共10个元素,从0开始计数,即a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9],正好10个,没有a[10],所以a[10]就是不能表达这个数组元素。C、*a ---数...
10.为表示“a和b都不等于0”,应使用的C语言表达式是( )。A)(a!=0) || (b!=0)B)a || bC)!(a=0)(b!=0)D)a b11.执行以下程序的输出结果是( )。main() { int i=1,j=1,k=2; if((j++||k++) i++) printf("%d,%d,%d\n",i,j,k); }A)1,1,2B)2,2,1C)2,2,2D)2,...
int a[2][3],*p[3];因为[]的优先级比*高所以p是一个数组,这个数组存放的是指向整数的指针。即存放的是一个整数变量的地址。而&a[1][2]正好是一个整数的地址。所以 p[0]=&a[1][2]正确。补充回答:因为D int *p[3];p是一个数组,这个数组存放的是整数指针。p[1]就是一个整数指针...
7. 若有一些定义和语句 include <stdio.h> int a=4,b=3,*p,*q,*w;p=&a; q=&b; w=q; q=NULL;则以下选项中错误的语句是__C__。 (2分)C. *p=va;8. 若变量已正确说明为float类型,要通过语句scanf("%f %f %f",&a,&b,&c);给 a赋予10.0,b赋予22.0,c赋予33...
A) pp[0][1] B) a[10] C) p[3][1] D) *(*(p+2)+2)3. 设有以下定义:int a[4][3]={1,2,3,4,5,6,7,8,9,10,11,12};int (*prt)[3]=a,*p=a[0];则下列能够正确表示数组元素a[1][2]的表达式是 ...
a是一个二维数组,它的每个元素都是int型的。A的错误是因为p是常量(数组名都是指针常量),不可以被赋值。而且p和a的类型也不一致。BCD都是对p的元素赋值,这是可以的,等号右边应当是一个int型数据的指针(即地址)。C选项中a[1][2]是a的一个元素,是一个int型值,&取了它的地址,所以是...
采纳率:0% 帮助的人:1256 我也去答题访问个人页 关注 展开全部 1、函数fun的功能是计算x^n。double fun(double x,int n){int i; double y=1; for(i=1;i<=n;i++) y=y*x; return y;}主函数中已经正确定义m、a、b变量并赋值,并调用fun函数计算:m=a^4+b^4-(a+b)^3。实现这一计...
include <stdio.h>#include <malloc.h>void main(){ int a[2][3] = {{1, 2, 3}, {4, 5, 6}}; int **p = (int **)malloc(sizeof(int)); *p = a[1]; printf ("%d\n", **p); free(p);}你没有给p申请空间。