C语言多维数组问题main(){int a[5]={1 2 3 4 5}; b[4]={6 7 8 9}; *p=a *q=b; p+=2; q+=3;*p=*(q)+3;q--; *(q-1)=*(p+1)-5;printf("%d,%d",*p,*q); }求具体推算过程 尤其是解释一下*p=*(q)+3;*(q-1)=*(p+1)-5;
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/16 15:56:05
C语言多维数组问题main(){int a[5]={1 2 3 4 5}; b[4]={6 7 8 9}; *p=a *q=b; p+=2; q+=3;*p=*(q)+3;q--; *(q-1)=*(p+1)-5;printf("%d,%d",*p,*q); }求具体推算过程 尤其是解释一下*p=*(q)+3;*(q-1)=*(p+1)-5;
C语言多维数组问题
main(){int a[5]={1 2 3 4 5}; b[4]={6 7 8 9}; *p=a *q=b; p+=2; q+=3;*p=*(q)+3;q--; *(q-1)=*(p+1)-5;printf("%d,%d",*p,*q); }求具体推算过程 尤其是解释一下*p=*(q)+3;*(q-1)=*(p+1)-5;
C语言多维数组问题main(){int a[5]={1 2 3 4 5}; b[4]={6 7 8 9}; *p=a *q=b; p+=2; q+=3;*p=*(q)+3;q--; *(q-1)=*(p+1)-5;printf("%d,%d",*p,*q); }求具体推算过程 尤其是解释一下*p=*(q)+3;*(q-1)=*(p+1)-5;
#include<stdio.h>
void main(){
int a[5]={1 ,2 ,3 ,4 ,5},//---逗号
b[4]={6, 7 ,8 ,9};//---上一句分号结束了.b[]要重新定义;int;或者前面改成逗号
int *p,*q;//----指针也没定义
//*p=a------这种写法也是错的;p的值是一个地址;*p的值是p所对应地址的值;
p=a;//把a的地址给p
q=b; //同上
p+=2;//p+2;地址向后移两位;指向a[2];
q+=3;//同上;指向b[3]----9
*p=*(q)+3;//a[2]=b[3]+3----12
q--;//指向b[2]
*(q-1)=*(p+1)-5;//前面还使用了中文括号;b[1]=a[2+1]-5
printf("%d,%d\n",*p,*q); //*p=a[2]=12;*q=b[2]=8
}
……