题目要求
定义以下结构体数组
struct c
{ int x;
int y;
}s[2]={1,3,2,7};
语句printf(“%d”,s[0].x*s[1].x)的输出结果为?
思路分析
s[]是struct c类型的数组,struc c有2个int类型的成员,int x和int y,这个题比较巧妙,s[2]在定义数组的同时进行了初始化,
初始化的结果:
s[0].x
s[0].y
s[1].x
s[1].y
1
3
2
7
那么,s[0].x * s[1].x =1 *2=2
代码演示
#include <stdio.h>
int main()
{
struct c
{
int x;
int y;
}s[2]={1,3,2,7};
printf("s[0].x=%d\n",s[0].x);
printf("s[1].x=%d\n",s[1].x);
printf("s[0].y=%d\n",s[0].y);
printf("s[1].y=%d\n",s[1].y);
printf("s[0].x*s[1].x=%d\n",s[0].x*s[1].x);
}
验证结果
版权声明:本文为linux2422988311原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。