首页 > 全部 > 二级C语言 > 国家二级C语言机试(选择题)模拟试卷573

国家二级C语言机试(选择题)模拟试卷573

本单篇文档共10336字,内容预览3600字,预览为有答案版,源文件无水印,下载后包含无答案空白卷版和有答案版,同时也有计算机类NCRE全国计算机二级整科真题模拟题,讲义课件,思维导图,易错高频题等下载。
二级C语言 章节练习 973人下载
价格: 0.60 原价:¥8.80
收藏

国家二级C语言机试(选择题)模拟试卷573

公共基础选择题

1.若有语句“typedef struct S{int g;char h;}T;”,则下列叙述中正确的是( )。(B)

A. 可用S定义结构体变量

B. 可用T定义结构体变量

C. S是struct类型的变量

D. T是struct S类型的变量

解析:本题考查使用typedef重新声明一种结构体类型。其中T为结构体类型名,可以用来定义结构体变量。故本题答案为B选项。

2.若有语句“typedef struct TT{char c;int a[4];}CIN;”,则下列叙述中正确的是( )。(D)

A. CIN是struct TT类型的变量

B. TT是struct类型的变量

C. 可以用TT定义结构体变量

D. 可以用CIN定义结构体变量

解析:本题考查使用typedef重新声明一种结构体类型。其中CIN为结构体类型名,而不是结构体变量。故本题答案为D选项。

3.下列叙述中错误的是( )。(B)

A. 可以用typedef将已存在的类型用一个新的名字来代表

B. 可以通过typedef增加新的类型

C. 用typedef定义新的类型名后,原有类型名仍有效

D. 用typedef可以为各种类型起别名,但不能为变量起别名

解析:本题考查typedef的用法。typedef并不是用来增加一种新的类型,而是对已存在的类型用一个新的名字来代表,所以B选项错误。故本题答案为B选项。

4.有以下程序:

#include

main( )

struct STU

char name[9];

char sex;

double score[2];

};

struct STU a={"Zhao",'m',85.0,90.0},b={"Qian",'f',95.0,92.0};

b=a;

printf("%s,%c,%2.0f,%2.0f\n",b.name,b.sex,b.score[0],b.score[1]);

}

程序的运行结果是( )。(B)

A. Qian,m,85,90

B. Zhao,m,85,90

C. Zhao,f,95,92

D. Qian,f,95,92

解析:本题考查结构体初始化。在main函数中将结构体变量a赋值给变量b。输出结构体变量b的值为Zhao,m,85,90。故本题答案为B选项。

5.下列结构体类型说明和变量定义中正确的是( )。

B

解析:本题考查结构体的相关知识。选项A中“struct REC”后面不能有分号。C选项中“typedef struct REC”的后面也不能有分号。选项D中“REC”是结构体变量,不能当作结构体类型来使用。故本题答案为B选项。

6.下列结构体的定义语句中错误的是( )。

A

解析:A选项错误,在定义结构体语句后少了分号。故本题答案为A选项。

7.设有定义:

struct complex

{ int real,unreal;

}

data1={1,8},data2;

则下列赋值语句中错误的是( )。(A)

A. data2=(2,6);

B. data2=data1;

C. data2.real=data1.real;

D. data2.real=data1.unreal;

解析:A选项中的语句可以在声明变量的同时为data2赋值,赋值语句应写作“data2={2,6};”。故本题答案为A选项。

8.有以下程序:

struct st{int x;int *y;}*pt;

int a[ ]={1,2},b[]={3,4};

struct st c[2]={10,a,20,b};

pt=c;

以下选项中表达式值为11的是( )。(A)

A. ++pt->x

B. pt->x

C. *pt->y

D. (pt++)-_>x

解析:本题考查结构体数组初始化和结构体变量的引用。题目中定义了一个结构体数组c并初始化,指针pt指向c的第1个元素。则“++pt->x”为11,“pt->x”为10,“*pt->y”为1,“(pt++)->x”为20。故本题答案为A选项。

9.有以下定义和语句:

{

int num;

char name[20];char c;

struct

{

int day;

int month;

int year;

}

s:

};

struct workers w.*pw;

pw=&w;

能给w中year成员赋1980的语句是( )。(C)

A. pw->year=1980;

B. W.year=1980;

C. w.s.year=1980;

D. *pw.year=1980;

解析:本题考查结构体变量的引用。题目中定义了一个结构体,结构体中的成员又是一个结构体,w为结构体workers的变量。如果给内层结构体成员赋值,先要得到内层结构体变量,即“w.s”。若要给year赋值,表示为“w.s.year”即可。故本题答案为C选项。

10.有以下程序:

#include

struct tt{int x;struct tt *y;}*p;

struct tt a[4]={20,a+1,15,a+2,30,a+3,17,a};

main( )

{

int i;

P=a;

for(i=1;i<=2;i++)

{

printf("%d,",P->x);

P=P->y:

}

}

程序的运行结果是( )。(D)

A. 20,30,

B. 30,17,

C. 15,30,

D. 20,15,

解析:本题考查结构体变量的引用和结构体数组。结构体指针变量p指向数组a的第1个元素,所以“p->x”为20。执行“p=p->y”后,p指向数组a的第2个元素,所以输出15。故本题答案为D选项。

11.设有定义“struct{char mark[12];int num1;double num2;}t1,t2;”,若变量均已正确赋初值,则下列语

本文档预览:3600字符,共10336字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载

剩余未完,查看全文
收藏
国家二级C语言机试(选择题)模拟试卷573

推荐资源

客服

扫码添加客服微信

热线

官方客服

如遇问题,请联系客服为您解决

电话客服:

客服微信:pujinet

工作时间:9:00-18:00,节假日休息

公众号

扫码关注微信公众号