#include<stdio.h> int a[3][3]={1,2,3,4,5,6,7,8,9},*p; void main() { p=(int*)malloc(sizeof(iC语言
#include<stdio.h>inta[3][3]={1,2,3,4,5,6,7,8,9},*p;voidmain(){p=(int*)malloc(sizeof(i...
#include<stdio.h>
int a[3][3]={1,2,3,4,5,6,7,8,9},*p;
void main()
{ p=(int*)malloc(sizeof(int));
f(p,a);
printf("%d\n",*p);
system ("pause");
}
f(int *s,int p[][3])
{
*s=p[1][1];
system ("pause");
}
答案是5 求详细解释,追分 展开
int a[3][3]={1,2,3,4,5,6,7,8,9},*p;
void main()
{ p=(int*)malloc(sizeof(int));
f(p,a);
printf("%d\n",*p);
system ("pause");
}
f(int *s,int p[][3])
{
*s=p[1][1];
system ("pause");
}
答案是5 求详细解释,追分 展开
1个回答
展开全部
首先是 a的初始化
a的值为
a[0][0]~a[0][2] 1 2 3
a[1][0]~a[1][2] 4 5 6
a[2][0]~a[2][2] 7 8 9
void main()
{ p=(int*)malloc(sizeof(int));
// 分配一块内存,其地址赋值给p(全局变量)
f(p,a);//调用函数
printf("%d\n",*p);
// 这里p是全局变量,指向分配的那块内存,所以*p的值是5
system ("pause");
}
f(int *s,int p[][3])
{
*s=p[1][1];
// 这里面的p是函数参数,和全局变量p不一样,
他是局部变量,他的值就是全局变量a值(a[0][0])的地址。
所以这里的p[1][1]就是a[1][1].其值为 5.
// s的值就是全局变量p的值,指向分配的那块内存,所以分配的那块内存里面存的值是5.
system ("pause");
}
a的值为
a[0][0]~a[0][2] 1 2 3
a[1][0]~a[1][2] 4 5 6
a[2][0]~a[2][2] 7 8 9
void main()
{ p=(int*)malloc(sizeof(int));
// 分配一块内存,其地址赋值给p(全局变量)
f(p,a);//调用函数
printf("%d\n",*p);
// 这里p是全局变量,指向分配的那块内存,所以*p的值是5
system ("pause");
}
f(int *s,int p[][3])
{
*s=p[1][1];
// 这里面的p是函数参数,和全局变量p不一样,
他是局部变量,他的值就是全局变量a值(a[0][0])的地址。
所以这里的p[1][1]就是a[1][1].其值为 5.
// s的值就是全局变量p的值,指向分配的那块内存,所以分配的那块内存里面存的值是5.
system ("pause");
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询