C语言程序

structstu{intx;int*y;}*p;intdt[4]={10,20,30,40};structstua[4]={50,&dt[0],60,&dt[1],70... struct stu
{
int x;
int *y;
}*p;
int dt[4]={10,20,30,40};
struct stu a[4]={50,&dt[0],60,&dt[1],70,&dt[2],80,&dt[3]};

main()
{
p=a;
printf(“%d”,++p->x);
printf(“%d”,(++p)->x);
printf(“%d”,++(*p->y));
}
求输出结果?
(请帮忙把解题过程讲解详细点,特别是struct stu a[4]这个数组,是什么意思呀?怎么大括号里有8个数据呢?分别代表什么呢?)
讲的好的我会再加分的!谢谢!
请把计算过程也帮我写出来,要不然只给一个答案,我也看不太懂,谢谢了!
展开
 我来答
zhidaoll
2009-11-19 · TA获得超过1247个赞
知道小有建树答主
回答量:884
采纳率:50%
帮助的人:656万
展开全部
struct stu a[0]到struct stu a[3]是结构体数组元素,每个里面都包含两个值——一个整型、一个地址(也就是在struct stu里定义的那个int x;int *y)。至于输出结果的话,三个printf结果分别是51、60、21,但是最后是连在一起的516021
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友c359368df
2009-11-19
知道答主
回答量:6
采纳率:0%
帮助的人:8654
展开全部
struct stu a[4]是一个拥有4个(struct stu 类型)元素的结构体数组。
每个结构体元素拥有两个数据(int x, int* y);
所以大括号中就有八个数据了啊!

int dt[4]={10,20,30,40};
struct stu a[4]={50,&dt[0],60,&dt[1],70,&dt[2],80,&dt[3]}
a[0].x = 50; a[0].y = &dt[0];
...
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式