首页 > 全部 > 二级C语言 > 国家二级C语言机试(结构体、共用体、位运算及文件操作)模拟试卷8

国家二级C语言机试(结构体、共用体、位运算及文件操作)模拟试卷8

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

国家二级C语言机试(结构体、共用体、位运算及文件操作)模拟试卷8

选择题

1.若有以下程序

main(){int c;

c=10^5:

printf(\\(A)

A. 15

B. 10000

C. 5

D. 105

解析:按位异或(^)的运算规则是:参与运算的两个运算数中相对应的二进制位上,若数相同,则该位的结果为0;若数不同,该位的结果为1。整数10和5的二进制编码分别为1010和0101,异或结果为1111,其上进制数据位15。

2.若有以下程序

main(){int c;

c=1315;

printf(\\(C)

A. 15

B. 18

C. 13

D. 5

解析:按位或(|)的运算规则是:参加运算的两个运算数中,只要两个相应的二进制位中一个为1,则该位的运算结果即为1;只有当两个相应位的数都为0时,该位的运算结果才为0。13的二进制位1101,5的二进制位0101,或运算的结果为1101,因此值为13。

3.有以下程序

main(){int i=0;

i=~i:

printf(\\(D)

A. 0

B. 1

C. 8

D. 一1

解析:运算符(~)是位运算符中唯一的一个单目运算符,运算对象应置于运算符的右边,其运算功能是把运算对象的内容按位取反(使每一位上的0变1,1变0)。i的初值为0,二进制位00000000,因此取反后结果为11111111,最高位为符号位,为-1的补码形式,因此输出结果为-1。

4.有以下程序

main(){int i=1:

i==i^i;

printf(\\(B)

A. 一1

B. 0

C. 1

D. 7

解析:按位异或(^)的运算规则是:参与运算的两个运算数中相对应的二进制位上,若数相同,则该位的结果为0;若数不同,该位的结果为1。本题中表达式i^i的值必为0,因为i的各个位置的二进制值相同。

5.下面关于位运算符的叙述,正确的是(D)

A. #表示“按位异或”的运算

B. ‖表示“按位或”的运算

C. ~表示“按位异或”的运算

D. &表示“按位与”的运算

解析:C语言提供了6种位运算符,各种位运算符的含义见下表:

6.以下叙述中正确的是(D)

A. 打开一个已存在的文件并进行了写操作后,原有文件中的全部数据必定被覆盖

B. 在一个程序中当对文件进行了写操作后,必须先关闭该文件然后再打开,才能读到第1个数据

C. C语言中的文件是流式文件,因此只能顺序存取数据

D. 当对文件的读(写)操作完成之后,必须将它关闭,否则可能导致数据丢失

解析:在C语言中,有两种对文件的存取方式;顺序存取和直接存取:如果以“a”的方式对一个已打开的文件进行与操作后,则原有文件中内容将保存,新的数据写在原有内容之后。如果以“a+”的方式为读和写而打开一个文件,则既可以对文件进行读,也可以对文件进行写,而且在读和写操作之间不必关闭文件,可以从头开始读。当对文件的读(写)操作完成之后,必颈将它关闭。

7.下列关于C语言文件的叙述中正确的是(C)

A. 文件由结构序列组成,可以构成二进制文件或文本文件

B. 文件由一系列数据依次排列组成,只能构成二进制文件

C. 文件由数据序列组成,可以构成二进制文件或文本文件

D. 文件由字符序列组成,其类型只能是文本文件

解析:在C语言中,对输入、输出的数据都按“数据流”的形式进行处理。数据可以按文本形式或二进制形式存放在介质上,因此文件可以按数据的仔放形式分为文本文件和二进制文件。

8.下面选项中关于“文件指针”概念的叙述正确的是(C)

A. 文件指针就是文件位置指针,表示当前读写数据的位置

B. 文件指针指向文件在计算机中的存储位置

C. 文件指针是程序中用FILE定义的指针变量

D. 把文件指针传给fscanf函数,就可以向文本文件中写入任意的字符

解析:文件指针实际上是指向一个结构体类型的指针,这个结构体中包含如缓冲区的地址、在缓冲区中当前存取的字符的位置、对文件是“读”或“写”、是否出错、是否已经遇到文件结束标志等信息。一般称文件指针结构体类型名为FILE,可以用此类型名来定义文件指针。

【格式】FILE*指针变量名

【说明】FILE是一个存储文件信息的结构体类型的变量。

注意不要和文件佗置指针混淆,在文什内部有一个位置指针,用以指示文件内部的当前读写位置。使用fgetc晒数,每读写一次,该指针均向后移动,它不需在程序中定义说明,而是由系统自动设置的。而文件指针是指向整个文件的,须在程序中定义说明,只要不重新赋值,文件指针的值是不变的。fscanf函数可以向文本文件和二进制文件输入数据。

9.设fp已定义,执行语句fp=fopen(“file”,“w”);后,以下针对文本文件file操作叙述的选项中正确的是(B)

A. 写操作结束后可以从头开始读

B. 只能写不能读

C. 可以在原有内容后追加写

D. 可以随意读和写

解析:本题考查文件操作。fopen的mode参数有多种类型:r以只读方式打开文件、r+以可读写方式打开文件、rb+以读写方式打开一个二进制文件、w以只写方式打开文件、w+以读写方式打开文件、wb+以读写方式打开二进制文件。

10.以下函数不能用于向文件中写入数据的是(C)

A. fwrite

B. fputc

C. ftell

D. fprintf

解析:本题考查文件操作。ftell函数返回文件指针的当前他置,其他的都写文件函数。

11.设文件指针fp已定义,执行语句fp=fopen(\\(D)

A. 写操作结束后可以从头开始读

B. 可以在原有内容后追加写

C. 可以随意读和写

D. 只能写不能读

解析:在题目中函数fopen以“只写”方式打开文件file。

12.有以下程序

#include<stdio.h>

main(){FILE*f;

f=fopen(\\(B)

A. abclo

B. abc

C. helloabc

D. abchello

解析:本题考查文件打开方式。

格式:文件指针名=fopen(文件名,使用文件方式)

13.有以下程序

#inelude<stdio.h>

main()

{FILE*fp;int i,a[6]={1,2

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

剩余未完,查看全文
收藏
国家二级C语言机试(结构体、共用体、位运算及文件操作)模拟试卷8

推荐资源

客服

扫码添加客服微信

热线

官方客服

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

电话客服:

客服微信:pujinet

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

公众号

扫码关注微信公众号