[计算机类试卷]国家二级C语言(结构体、共用体、位运算及文件操作)机试模拟试卷3及答案与解析.doc
《[计算机类试卷]国家二级C语言(结构体、共用体、位运算及文件操作)机试模拟试卷3及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级C语言(结构体、共用体、位运算及文件操作)机试模拟试卷3及答案与解析.doc(18页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级 C语言(结构体、共用体、位运算及文件操作)机试模拟试卷 3及答案与解析 一、选择题 1 有以下程序 #include main() char a=4; printf(“ d n“, a=a main() int a=5, b=1, t; t=(a main() FILE*f= f=fopen(“filea txt“, “W“); fprintf(f,“abc“); fclose(f); 若文本文件 filea txt中原有内容为: hello,则运行以上程序后,文件 filea txt中的内容为 ( A) abc!o ( B) abc ( C) helloabc ( D) abche
2、llo 14 有以下程序 #inchlde main() FILE*fp; int i, a6=1, 2, 3, 4, 5, 6; fp=fopen(“d2 dat“, “w+t“); for(i=0; i main() FILE*fp; int a10=1, 2,3), i, n; fp=fopen(“d1 dat“, “w“); for(i=0; i main() FILE *pf; char*s1=“China“,*s2=“Beijing“; pf=fopen(“abc dat“, “wb+“); fwrite(s2, 7, 1, pf); rewind(pf); *文件位置指针回到文件
3、开头 * fwrite(s1, 5, 1, pf); fclose(pf); 以上程序执行后 abc dat文件的内容是 ( A) Chinang ( B) China ( C) ChinaBeijing ( D) BeijingChina 19 有下列程序: #include main() FILE*fp; int k, n, a6=1,2, 3, 4, 5, 6); fp=fopen(“d2 dat“, “w“); fprintf(fp,“ d d d n“, a0, a1, a2); fprintf(fp,“ d d d n“, a31, a4, a5); fclose(fp); fp=
4、fopen(“d2 dat“,“r“); fscanf(fp,“ d d“, &k, &n); printf(“ d d n“, k, n); fclose(fp); 程序运行后的输出结果是 ( A) 14 ( B) 123 456 ( C) 123 4 ( D) 1 2 20 有下列程序: #include main() FILE*fp; int a10=1, 2, 3, 0, 0), i; fp=fopen(“d2 dat“, “wb“); fwtite(a, sizeof(int), 5, f1); fwrite(a, sizeof(int), 5, f1); fclose(fp); f
5、p=fopen(“d2 dat“,“rb“); fread(a, sizeof(int), 10, f(p); fclose(fp); for(i=0; i main() FILE*fp; char str10; fp=fopen(“myfile dat“, “w“); fputs(“abc“,fp); fclose(fp); fp=fopen(“myfile dat“, “a+“); fprintf(fp,“ d“, 28); rewind(fp); fscanf(fp,“ s“ str); puts(str); fclose(fp); 程序运行后的输出结果是 ( A) 28c ( B) a
6、be28 ( C) abc ( D)因类型不一致而出错 23 以下程序依次把从终端输入的字符存放到 f文件中,用 #作为结束输入的标志,则在横线处应填入的选项是 #include main() FILE*fp; char ch; fp=fopen(“fname“, “W“); while(ch=getchar()!=#) fputc(_); fclose(fp); ) ( A) fp, ch ( B) ch ( C) ch, “fname“ ( D) ch, fp 24 以下程序用来统计文件中字符的个数 (函数 feof用以检查文件是否结束,结束时返回非零 ) #include main()
7、FILE*fp; long num=O: fp=fopen(“fname dat“,“r”); while(_) fgetc(fp); num+; ) printf(“num= d n“,num); fclose(fp); 下面选项中,填入横线处不能得到正确结果的是 ( A) feof(fp) ( B) feof(fp)=NULL ( C) !feof(fp) ( D) feof(fp)=0 25 下面关于 “EOF”的叙述,正确的是 ( A) EOF的值等于 0 ( B)文本文件和二进制文件都可以用 EOF作为文件结束标志 ( C) EOF是在库函数文件中定义的符号常量 ( D)对于文本文件
8、,龟 etc函数读入最后一个字符时,返回值是 EOF 26 若 fp已定义为指向某文件的指针,且没有读到该文件的末尾,则 C语言函数feof(fp)的函数返回值是 ( A) 0 ( B)非 0 ( C) -1 ( D) EOF 国家二级 C语言(结构体、共用体、位运算及文件操作)机试模拟试卷 3答案与解析 一、选择题 1 【正确答案】 A 【试题解析】 本题主要考查按位右移运算。 a=4的二进制为 00000100, al后为 00001000,其值为十进制数值 8。 【知识模块】 结构体、 共用体、位运算及文件操作 2 【正确答案】 C 【试题解析】 本题考查位操作运算符。 是左移运算符,左
9、移一位相当于乘 2, |是按位或运算符。 5左移两位相当于乘 4,得到 20, 20的二进制数是 00010100,和 0000000l进行按位或操作得到00010101,即十进制的 21。 【知识模块】 结构体、共用体、位运算及文件操作 3 【正确答案】 D 【试题解析】 “按位异或 ”运算的规则是:参与运算的两个运算数中相对应的二制位上,若数相同,则该位的结果为 0;若数不同,则 该位的结果为 1。因为语句s=32; s=32:相当于 s与自身做按位异或运算,所以其结果等于 0。 【知识模块】 结构体、共用体、位运算及文件操作 4 【正确答案】 A 【试题解析】 按位异或 ()的运算规则是
10、:参与运算的两个运算数中相对应的二进制位上,若数相同,则该位的结果为 0;若数不同,该位的结果为 1。整数 10和 5的二进制编码分别为 1010和 0101,异或结果为 1111,其十进制数据位 15。 【知识模块】 结构体、共用体、位运算及文件操作 5 【正确答案】 C 【试题解析】 按位或 (1)的运算规则是:参加运算的两个运算数中,只要两个相应的二进制位中一个为 1,则该位的运算结果即为 1;只有当两个相应位的数都为0时,该位的运算结果才为 0。 13的二进制位 1101, 5的二进制位 0101,或运算的结果为 1101,因此值为 13。 【知识模块】 结构体、共用体、位运算及文件操
11、作 6 【正确答案】 D 【试题解析】 运算符 ( )是位运算符中唯一的一个单目运算符,运算对象应置于运算符的右边,其运算功能是把运算对象的内容按位取反 (使每一位上的 0变 1, 1变 0)。 i的初值为 0,二进制位 00000000,因此取反后结果为 11111111,最高位为符号位,为 -1的补码形式,因此输出结果为 -1 【知识模块】 结构体、共用体、位运算及文件操作 7 【正确答案】 B 【试题解析】 按位异或 ()的运算规则是:参与运算的两个运算数中相对应的二进制位上,若数相同,则该位的结果为 0;若数不同,该位的结果为 1。本题中表达式 ii的值必为 0,因为 i的各个位置的二
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 语言 结构 共用 运算 文件 操作 模拟 答案 解析 DOC
