《C語言結(jié)構(gòu)體共用體選擇題(新) 優(yōu)選內(nèi)容》由會(huì)員分享,可在線閱讀,更多相關(guān)《C語言結(jié)構(gòu)體共用體選擇題(新) 優(yōu)選內(nèi)容(4頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、
1、變量a所占的內(nèi)存字節(jié)數(shù)是________。(假設(shè)整型int為4字節(jié))
struct stu
{ char name[20];
long int n;
int score[4];
} a ;
A) 28 B) 30
C) 32 D) 46
C
2、下列程序的輸出結(jié)果是
A)5 B)6 C)7 D)8
struct abc
{int a,b,c;};
main()
{struct abc s[2]={
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,};
根據(jù)以上定義,能輸
3、出字母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],6
4、0,&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、以下程序的輸出結(jié)果是________。
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
5、].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、設(shè)有變
6、量定義
struct stu
{int age;
int num;
}std,*p=&std;
能正確引用結(jié)構(gòu)體變量std中成員age的表達(dá)式是
A) std->age B) *std->age
C) *p.age D) (*p).age
D
9、設(shè)有定義語句
"struct {int x;int y;}d[2]={{1,3},{2,7}};",
則printf("%d\n",d[0].y/d[0].x*d[1].x);的輸出結(jié)果是
A) 0 B) 1
C) 3
7、 D) 6
D
11、若有如下定義,則對(duì)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在內(nèi)存中所占的字節(jié)數(shù)是
union aa {float x;float y;char c[6];};
struct st {union aa v;float w[5];
8、double ave;}w;
A) 42 B) 34
C) 30 D) 26
B
15、變量a所占的內(nèi)存字節(jié)數(shù)是
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、執(zhí)行下面的程序后,輸出的結(jié)果是
struct abc
{int a,b,c;}
ma
9、in()
{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、下面程序的輸出結(jié)果是
typedef union
{long x[2];
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;
則對(duì)字符串li ning的引用方式不可以的是
A) (*p).name B) p.name
C) a.name D) p->name
B
4
僅供借鑒#