題目要求
定義以下結構體數組
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);
}