C语言题库及答案(选择题) 联系客服

发布时间 : 星期一 文章C语言题库及答案(选择题)更新完毕开始阅读3550cd2faaea998fcc220e9c

347.设有定义:int n=0,*p=&n,**q=&p;则以下选项中,正确的赋值语句是()。 A.p=1; B.*q=2; C.q=p; D.*p=5; 348.fscanf函数的正确调用形式是()。 A.fscanf(fp,格式字符串,输出表列); B.fscanf(格式字符串,输出表列,fp);

C.fscanf(格式字符串,文件指针,输出表列); D.fscanf(文件指针,格式字符串,输入表列); 349.系统的标准输入文件是指()。

A.键盘 B.显示器 C.软盘 D.硬盘 350.函数 ftell(fp) 的作用是()。 A.得到流式文件中的当前位置 B.移到流式文件的位置指针 C.初始化流式文件的位置指针 D.以上答案均正确

351.函数 rewind 的作用是()。 A.使位置指针重新返回文件的开头

B.将位置指针指向文件中所要求的特定位置 C.使位置指针指向文件的末尾

D.使位置指针自动移至下一个字符位置 352.fseek函数的正确调用形式是()。 A.fseek(文件类型指针,起始点,位移量) B.fseek(fp,位移量,起始点) C.fseek(位移量,起始点,fp)

D.fseek(起始点,位移量,文件类型指针)

353.利用 fseek 函数可以实现的操作是()。 A.改变文件的位置指针 B.文件的顺序读写 C.文件的随机读写 D.以上答案均正确

354.函数调用语句:fseek(fp,-20L,2);的含义是()。 A.将文件位置指针移到距离文件头20个字节处 B.将文件位置指针从当前位置向后移动20个字节 C.将文件位置指针从文件末尾处退后20个字节 D.将文件位置指针移到离当前位置20个字节处

355.若调用fputc函数输出字符成功,则其返回值是()。

A.EOF B.1 C.0 D.输出的字符 356.在执行 fopen 函数时,ferror 函数的初值是()。 A.TRUE B.-1 C.1 D.0 357.fwrite函数的一般调用形式是()。 A.fwrite(buffer,count,size,fp); B.fwrite(fp,size,count,buffer); C.fwrite(fp,count,size,buffer); D.fwrite(buffer,size,count,fp);

358.以下fread函数的调用形式中,参数类型正确的是()。

- 33 -

A.fread(int fd,char *buf,int count) B.fread(int *buf,int fd,int count) C.fread(int fd,int count,char *buf) D.fread(int count,char *buf,int fd)

359.已知函数的调用形式:fread(buffer,size,count,fp);其中buffer代表的是()。 A.一个整数,代表要读入的数据项总数 B.一个文件指针,指向要读的文件

C.一个指针,指向要读入数据的存放地址 D.一个存储区,存放要读的数据项

360.当顺利执行了文件关闭操作时,fclose函数的返回值是()。 A.-1 B.TRUE C.0 D.1

361.若以\方式打开一个已存在的文件,则以下叙述正确的是()。

A.文件打开时,原文件内容不被删除,位置指针移到文件末尾,可作添加和读操作 B.文件打开时,原文件内容不被删除,位置指针移到文件开头,可作重写和读操作 C.文件打开时,原有文件内容被删除,只可作写操作 D.以上各种说法皆不正确

362.若要用fopen函数打开一个新的二进制文件,该文件要既能读也能写,则文件方式字符串应是()。

A.\ B.\ C.\ D.\363.若执行fopen函数时发生错误,则函数的返回值是()。 A.地址值 B.0 C.1 D.EOF 364.以下叙述中不正确的是()。

A.C语言中的文本文件以ASCⅡ码形式存储数据 B.C语言中对二进制文件的访问速度比文本文件快 C.C语言中,随机读写方式不适用于文本文件 D.C语言中,顺序读写方式不适用于二进制文件

365.以下可作为函数fopen中第一个参数的正确格式是()。 A.c:user\\text.txt B.c:\%user\\text.txt C.\D.\

366.fgetc函数的作用是从指定文件读入一个字符,该文件的打开方式必须是()。 A.只写 B.追加 C.读或读写 D.答案B和C都正确 367.以下叙述中错误的是()。

A.二进制文件打开后可以先读文件的末尾,而顺序文件不可以 B.在程序结束时,应当用fclose函数关闭已打开的文件

C.在利用fread函数从二进制文件中读数据时,可以用数组名给数组中所有元素读入数据

D.不可以用FILE定义指向二进制文件的文件指针 368.下列关于C语言数据文件的叙述中正确的是()。 A.文件由ASCII码字符序列组成,C语言只能读写文本文件 B.文件由二进制数据序列组成,C语言只能读写二进制文件

C.文件由记录序列组成,可按数据的存放形式分为二进制文件和文本文件 D.文件由数据流形式组成,可按数据的存放形式分为二进制文件和文本文件

- 34 -

369.若fp已正确定义并指向某个文件,当未遇到该文件结束标志时函数feof(fp)的值为()。

A.0 B.1 C.-1 D.一个非0值

370.若要打开A盘上user子目录下名为abc.txt的文本文件进行读、写操作,下面符合此要求的函数调用是()。 A.fopen(\B.fopen(\C.fopen(\D.fopen(\

371.在C程序中,可把整型数以二进制形式存放到文件中的函数是()。

A.fprintf函数 B.fread函数 C.fwrite函数 D.fputc函数 372.若fp是指向某文件的指针,且已读到此文件末尾,则库函数feof(fp)的返回值是()。

A.EOF B.0 C.非零值 D.NULL 373.C语言结构体类型变量在程序执行期间()。 A.所有成员一直驻留在内存中 B.只有一个成员驻留在内存中 C.部分成员驻留在内存中 D.没有成员驻留在内存中

374.当说明一个结构体变量时系统分配给它的内存是()。 A.各成员所需内存量的总和 B.结构中第一个成员所需内存量

C.成员中占内存量最大者所需的容量 D.结构中最后一个成员所需内存量 375.下列变量中合法的是

A. B.C.Tom B.3a6b C._6a7b D.$ABC 376.整型变量x=1,y=3,经下列计算后,x的值不等于6的是 A.x=(x=1+2,x*2) B.x=y>2?6:5 C.x=9-(--y)-(y--) D.x=y*4/2

377.能正确表示逻辑关系:\≥10或a≤0 \的C语言表达式是 A.a>=10 or a<=0 B.a>=0 | a<=10 C.a>=10 && a<=0 D.a>=10 || a<=0

378.C程序的基本结构单位是

A.文件 B.语句 C.函数 D.表达式

379.设有说明:char w; int x; float y; double z; 则表达式w*x+z-y值的数据类型为 A.float B.int C.char D.double 380.已定义两个字符数组a,b,则以下正确的输入格式是 A.scanf(\B.get(a, b);

C.scanf(\

- 35 -

D.gets(\

381.C语言中,逻辑\真\等价于 A.大于零的数 B.非零的数

C.大于零的整数 D.非零的整数

382.函数调用:strcat(strcpy(str1,str2),str3)的功能是 A.将串str1复制到串str2中后再连接到串str3之后 B.将串str1连接到串str2之后再复制到串str3之后

C.将串str2连接到串str1之后再将串str1复制到串str3中 D.将串str2复制到串str1中后再将串str3连接到串str1之后 383.任何一个C语言的可执行程序都是从____开始执行的. A.程序中的第一个函数 B.main( )函数的入口处 C.程序中的第一条语句 D.编译预处理语句

384.下面叙述中错误的是

A.函数的形式参数,在函数未被调用时就不被分配存储空间 B.若函数的定义出现在主调函数之前,则可以不必再加说明 C.若一个函数没有return语句,则什么值也不会返回 D.一般来说,函数的形参和实参的类型要一致

385.在一个C源程序文件中,若要定义一个只允许本源文件中所有函数使用的全局变量,则该变量需要使用的存储类型是

A.extern B.register C.auto D.static 386.若有以下定义和语句:

int a[10]={1,2,3,4,5,6,7,8,9,10}, *p=a; 不能表示a数组元素的表达式是

A.*p B.a[9] C.*p++ D.a[*p-a] 387.C语言函数的隐含存储类别是

A.static B.auto C.register D.extern 388.下面说法中错误的是

A.共用体变量的地址和它各成员的地址都是同一地址 B.共用体内的成员可以是结构变量,反之亦然 C.在任一时刻,共用体变量的各成员只有一个有效 D.函数可以返回一个共用体变量

389.设变量定义为\则&(*p)相当于

A.p B.*p C.x D.*(&x) 390.以下程序的执行结果是main() { int x = 0, s = 0;

while( !x != 0 ) s += ++x; printf( \

A.0 B.1 C.语法错误 D.无限循环 391.执行下列程序段后,m的值是________. int w=2,x=3,y=4,z=5,m;

- 36 -