1、变量a所占的内存字节数是________。(假设整型int为4字节)
  struct stu
  { char name[20];
    long int n;
    int score[4];
  } a ;
A) 28            B) 30
C) 32            D) 46
C
2、下列程序的输出结果是
  A)5          B)6            C)7            D)8
  struct abc
  {int a,b,c;};
  main()
  {struct abc s[2]={{1,2,3},{4,5,6}};int t;
  t=s[0].a+s[1].b;
  printf("%d\n",t);
  }
B
3、有如下定义
  struct person{ char name[9]; int age;};
  struct person calss[4]={ "Johu",17,
                            "Paul",19,
                            "Mary",18,
                            "Adam",16,};
根据以上定义,能输出字母M的语句是________。
A) printf("%c\n",class[3].name);     
B) printf("%c\n",class[3].name[1]);
C) printf("%c\n",class[2].name[1]);   
D) printf("%c\n",class[2].name[0]);
D
4、以下程序的输出是________。
  struct st
  {int x;int *y;} *p;
  int dt[4]={10,20,30,40};
  struct st aa[4]={50,&dt[0],60,&dt[0],60,&dt[0],60,dt[0],};
  main()
  { p=aa;
    printf("%d\n",++(p->x));
  }
A) 10          B) 11
C) 51          D) 60
C
6、以下程序的输出结果是________。
  struct  HAR
  { int x,y; struct HAR  *p; } h[2];
  main()
  { int h[0].x=1; h[0].y=2;
    h[1].x=3;h[1].y=4;
    h[0].p=&h[1]; h[1].p=h;
    printf("%d%d\n",(h[0].p)->x,(h[1].p)->y);  }
A) 12          B) 23
C) 14          D) 32
D
7、下面程序的输出是________。
main()
{
struct cmplx { int x; int y; } cnum[2]={1,3,2,7};
printf("%d\n",cnum[0].y /cnum[0].x * cnum[1].x);
}
A) 0            B) 1
C) 3            D) 6
D
8、设有变量定义
    struct  stu
{int  age;
int  num;
}std,*p=&std;
能正确引用结构体变量std中成员age的表达式是
A) std->age        B) *std->age
C) *p.age          D) (*p).age
D
9、设有定义语句
    "struct  {int x;int y;}d[2]={{1,3},{2,7}};",
则printf("%d\n",d[0].y/d[0].x*d[1].x);的输出结果是
A) 0                  B) 1
C) 3                  D) 6
D
11、若有如下定义,则对data中的a成员的正确引用是
    struct  sk {int  a;float  b;}data,*p=&data;
A) (*p).data.a            B) (*p).a
C) p->data.a              D)  p.data.a
B
12、若有以下说明和定义语句,则变量w在内存中所占的字节数是
union  aa {float  x;float  y;char  c[6];};
struct  st {union  aa  v;float  w[5];double  ave;}w;
A) 42                      B) 34
C) 30                      D) 26
B
15、变量a所占的内存字节数是
union  U
{char  st[4];
int  i;
long  l;
};
struct  A
{int  c;
union  U  u;
}a;
A) 4            B) 5
C) 6            D) 8
D
16、执行下面的程序后,输出的结果是
struct  abc
{int  a,b,c;}
main()
{struct  abc  s[2]={{1,2,3},{4,5,6}};int  t;
t=s[0].a+s[1].b;printf("%d\n",t);
}
A) 5                  B) 6
C) 7                  D) 8
C
18、下面程序的输出结果是
typedef  union
{long  x[2];
c语言中struct
int  y[4];
char  z[8];
}MYTYPE;
MYTYPE  them;
main()
{printf("%d\n",sizeof(them));}
A) 32                    B) 16
C) 8                    D) 24
C
19、若有以下的说明:
struct  person
{char  name[20];
int  age;
char  sex;
}a={"li ning",20,'m'},*p=&a;
则对字符串li ning的引用方式不可以的是
A) (*p).name          B) p.name
C) a.name              D) p->name
B

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。