月基础部分与C语言程序设计方案书_第1页
月基础部分与C语言程序设计方案书_第2页
月基础部分与C语言程序设计方案书_第3页
月基础部分与C语言程序设计方案书_第4页
月基础部分与C语言程序设计方案书_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、现在位置:首页 全国计算机等级考试二级笔试试卷基础部分和 C 语言程序设计(考试时间: 120 分钟,满分 100 分)2002 年 4 月一、选择题(1)( 40)题每小题 1 分,(41)( 50) 题每小题 2 分,共和 60 分)下列各题 A )、B)、C)、D)四个选项中,只有一个选项是1 / 46正确的,请将正确选项涂写在答题卡相应位置上,答在试卷 上不得分。(1) 在计算机中 ,一个字长的二进制位数是A) 8 B) 16CPU 的型号而定(2) 计算机网络的突出优点是A) 速度快 B) 资源共享 容量大(3) 计算机网络能传送的信息是A) 所有的多媒体信息C) 除声音外的所有信息

2、C) 32 D) 随C) 精度高 D)B) 只有文本信息D) 文本和图像信息(4) 切断计算机电源后 ,下列存储器中的信息会丢失的是 :A) RAM B) ROM C) 软 盘2 / 46D) 硬盘(5) 十进制数 127 转换成二进制数是A) 11111111 B) 01111111C) 10000000D) 11111110(6) 要想打印存放在当前盘当前目录上所有扩展名为 .TXT 的文件内容 , 应该使用的 DOS 命令为A) DIR *.TXTPRNC) COPY *.TXT PRN*.TXTPRNB) TYPE *.TXTPRND) COPY(7) 将当前盘当前目录及其子目录中的全

3、部文件 (总量不足1.2MB) 复制到一张空的 A 盘的根目录下 ,应该使用的 DOS 命令为A) XCOPY *.*A: /MB) XCOPY *.*A: /SC) XCOPY *.*A: /PD) XCOPY *.*A: /A3 / 46(8) 在 C 盘根目录下执行 PROMPT $p$g 命令之后 ,DOS 的提 示符变为A) C:B) C:C) CD) C:(9) DOS 命令 COPY CON DISP 中的 CON 代表A) 子目录 B) 磁盘文件 C) 键盘 D) 显 示器(10) 结构化程序设计所规定的三种基本控制结构是A) 输入、处理、输出 B) 树形、网形、环 形C) 顺

4、序、选择、循环 D) 主程序、 子程序、 函数(11) 要把高级语言编写的源程序转换为目标程序,需要使用A) 编辑程序 B) 驱动程序 C) 诊断程序D) 编译程序4 / 46(12) 英文小写字母 d 的 ASCII 码为 100,英文大写字母 D 的 ASCII 码为A) 50B) 66C) 52D) 68(13) Windows 环境下 ,PrintScreen 键的作用是A) 复制当前窗口到剪贴板 B) 打印当前窗口的内容C) 复制屏幕到剪贴板 D) 打印屏幕内容(14) 在 Windows 环境下 ,为了终止应用程序的运行 ,应A) 关闭该应用程序窗口口C) 双击该应用程序窗口的标题

5、栏 出屏幕(15) 下列各带有通配符的文件名中B) 最小化该应用程序窗D) 将该应用程序窗口移,能代表文件 XYZ.TXT 的5 / 46A) *Z.?B) X*.* C) ?Z,TXTD) ?.?(16) 若有定义: int a=8 ,b=5 , C;,执行语句 C=a/b+0.4; 后, c 的值为A) 1.4B) 1C) 2.0D) 2(17) 若变量 a 是 int 类型,并执行了语句: a= A+1.6 ;,则 正确的叙述是A) a 的值是字符 CB) a 的值是浮点型C) 不允许字符型和浮点型相加 D) a 的值是字符 A 的ASCII 值加上 1。(18) 以下程序段的输出结果是

6、int a=1234; printf(%2dn,a);6 / 46A) 12 B) 34 出错、无结果C) 1234D) 提示(19) 以下选项中不属于C 语言的类型的是A) signed short imtC) unsigned int(20) 若有说明语句: int 入三个整数分别赋给变量B) unsigned long intD) long shorta,b,c,*d=&c ;,则能正确从键盘读 a、b、 c 的语句是A) scanf(%d%d%d,&a,&b,d); B) scanf(%d%d%d,&a,&b,&d);C) scanf(%d%d%d,a,b,d); D) scanf(%

7、d%d%d,a,b,*d);(21) 在 16 位 C 编译系统上,若定义 long a; ,则能给 a 赋 40000 的正确语句是7 / 46A) a=20000+20000 ;B) a=4000*10 ;C) a=30000+10000; D) a=4000L*10L;(22) 以下叙述正确的是A) 可以把 define 和 if 定义为用户标识符B) 可以把 define 定义为用户标识符,但不能把 if 定义为用 户标识符C) 可以把 if 定义为用户标识符,但不能把 define 定义为用 户标识符D) define 和 if 都不能定义为用户标识符(23) 若定义: int a=

8、511,*b=&a;, 则 printf(%dn,*b); 的输出 结果为A) 无确定值 B) a 的地址 C) 512 D) 5118 / 46(24) 以下程序的输出结果是main() int a=5,b=4,c=6,d;printf(%dn,d=ab?(ac?a:c):(b);D) 不确A) 5B) 4C) 6定(25) 以下程序中, while 循环的循环次数是main() int i=0;while(i10) if(i1) continue;9 / 46if(I=5) break;i+;A) 1B) 10C) 6 D) 死循环,不能确 定次数(26) 以下程序的输出结果是main()

9、 int a=0,i;10 / 46for(i=;i5;i+) switch(i) case 0:case 3:a+=2;case 1:case 2:a+=3;default:a+=5;printf(%dn,a);11 / 46A) 31B) 13C) 10D) 20(27) 以下程序的输出结果是main() int a=4,b=5,c=0,d;d=!a&!b|!c;printf(%dn,d);A) 1B) 0 C) 非 0 的数D) -1(28) 以下程序的输出结果是#include main()12 / 46 int i=0,a=0;while(i= A &ch=cZh=) ch- A+

10、a;return ch;main() char s=ABC+abc=defDEF,*p=s; while(*p) *p=cchar(*p);p+;14 / 46printf(%sn,s);A) abc+ABC=DEFdefB) abc+abc=defdefC) abcaABCDEFdefD) abcabcdefdef(30) 以下程序的输出结果是int f() static int i=0;int s=1;s+=i; i+;return s;15 / 46main() int i,a=0;for(i=0;i5;i+) a+=f();printf(%dn,a);A) 20B) 24 C) 25(

11、31) 以下程序段的输出结果是char s=141141abct;printf (%dn,strlen(s);D) 15A) 9B) 12C) 13D) 1416 / 46(32) 若有以下程序#include void f(int n);main() void f(int n);f(5);void f(int n) printf(%dn,n); 则以下叙述中不正确的是A) 若只在主函数中对函数 f 进行说明,则只能在主函数中正17 / 46确调用函数 fB) 若在主函数前对函数 f 进行说明, 则在主函数和其后的其 它函数中都可以正确调用函数 fC) 对于以上程序,编译时系统会提示出错信息:

12、提示对对 函数重复说明D) 函数 f 无返回值,所以可用 void 将其类型定义为无值型(33) 以下程序调用 findmax 函数返回数组中的最大值findmax(int *a,int n) int *p,*s;for(p=a,s=a; p-ap-s在下划线处应填入的是A) psB) *p*sC) apas(34) 以下程序的输出结果是main() char cf35=AAAA,BBB,CC;printf(%sn,ch1);19 / 46A) AAAA B) BBB C) BBBCC D)CC(35) 在 C 语言中,形参的缺省存储类是A) autoB) register C) static

13、 D) extern(36) 若指针 p 已正确定义, 要使 p 指向两个连续的整型动态 存储单元,不正确的语句是A) p=2*(int*)malloc(sizeof(int);B) p=(int*)malloc(2*sizeof(int);C) p=(int*)malloc(2*2);D) p=(int*)calloc(2,sizeof(int);(37) 以下程序的输出结果是20 / 46main() char x=040;printf(%0n,x1);A) 100B) 80 C) 64 D) 32(38) 若要打开 A 盘上 user 子目录下名为 abc.txt 的文本文件进行读、写操

14、作,下面符合此要求的函数调用是A) fopen(A:userabc.txt,r) B)fopen(A:userabc.txt,r+)C) fopen(A:userabc.txt,rb) C)fopen(A:userabc.txt,w)(39) 以下不能正确进行字符串赋初值的语句是A) char str5=good!; B) char str=good!;21 / 46D) charstr=good!;C) charstr5= g, o, o, d;(40) 若有下面的说明和定义:struct test int ml; char m2; float m3;union uu char ul5; i

15、nt u22; ua; myaa;则 sizeof(struct test ) 的值是A) 12 B) 16C) 14D) 9(41) 若有定义: int aa 8;。则以下表达式中不能代表数组元 aa1 的地址的是A) &aa0+1B) &aa1C) &aa0+D) aa+122 / 46(42) 以下程序的输出结果是f(int b,int m,int n) int i,s=0;for(i=m;in;i=i+2) s=s+bi;return s;main()int x,a=1,2,3,4,5,6,7,8,9;x=f(a,3,7);printf(%dn,x);23 / 46A) 10B) 18

16、C) 8D)15(43) 若有以下定义和语句 :int s45,(*ps)5;ps=s;则对 s 数组元素的正确引用形式是A) ps+1 B) *(ps+3) C) ps02 D)*(ps+1)+3(44) 以下程序的输出结果是main() int b33=0,1,2,0,1,2,0,1,2,i,j,t=1;for(i=0;i3;i+)24 / 46for(j=i;j=i;j+) t=t+bibjj;printf(%dn,t);D) 9A) 3 B) 4C) 1(45) 以下程序的输出结果是#include #include main() char b18=abcdefg,b28,*pb=b1

17、+3;while (-pb=b1) strcpy(b2,pb);printf(%dn,strlen(b2);25 / 46A) 8B) 3C) 1(46) 在说明语句: int *f(); 中,标识符 f 代表的是A) 一个用于指向整型数据的指针变量B) 一个用于指向一维数组的行指针C) 一个用于指向函数的指针变量D) 一个返回值为指针型的函数名(47) 不合法的 main 函数命令行参数表示形式是A) main(int a,char *c) B) main(int*arv)C) main(int argc,char *argv) D) main(int*argc)D) 7arc,charar

18、gv,char26 / 46(48) 以下程序的输出的结果是int x=3;main() int i;for (i=1;inext=&c; q-next=p-next; D) (*p).next=q;(*q).next=&b;(50) 设有以下说明语句typedef struct int n;char ch8;PER;则下面叙述中正确的是A) PER 是结构体变量名 体类型名B) PER 是结构D) struct 是结构体类C) typedef struct 是结构体类型 型名30 / 46 二、填空题 (每空 2 分,共 40 分) 请将每一个空的正确答案写在答案卡上,答在试卷上不得 分。(

19、1) 为了要将当前盘目录中的可执行程序 ABC.EXE 的输出 结果存放到当前盘当前目录中的文件 OUT.TXT 中 ,则应使用 的 DOS 命令为【 1 】 。(2) 计算机网络分为广域网和局域网 ,因特网属于【 2】 。(3) 要想在当前目录下方便地执行 C 盘 UCDOS 目录中的程 序,就应该先执行预设搜索路径的命令 ,该 DOS 命令为【 3】 。(4) 要查看当前目录中扩展名为 .DAT 的所有文件目录 ,应该 使用的 DOS 命令为【 4】 。(5) 在 Windows 环境下 ,当进行复制操作时 ,其复制的内容将 存放在【 5】中(6) 若从键盘输入 58,则以下程序输出的结果

20、是 【 6】 。31 / 46main() int a;scanf(%d,&a);if(a50) printf(%d,a);if(a40) printf(%d,a);if(a30) printf(%d,a);(7) 以下程序的输出结果是【 7】main() int a=177;printf(%on,a);32 / 46(8) 以下程序的输出结果是【 8】main() int a=0a+=(a=8);printf(%dn,a);(9) 以下程序输出的结果是【 9】main() int a=5,b=4,c=3,d;d=(abc);33 / 46 printf(%dn,d);(10) 以下定义的结构

21、体类型拟包含两个成员 ,其中成员变量 info 用来存入整形数据 ; 成员变量 link 是指向自身结构体的指 针.请将定义补充完整。struct nodeint info;【 10】 link;(11) 以下程序的输出结果是【 11】 。main()int s,i;34 / 46for(s=0,i=1;i3;i+,s+=i);printf(%dn,s);(12) 以下程序的输出结果是【 12】main() char *p=abcdefgh,*r;long *q;q=(long*)p;q+;r=(char*)q;printf(%sn,r);35 / 46(13) 以下程序的输出结果是【 13】

22、main() char s=abcdef;s3= 0;printf(%sn,s);(14) 以下程序的输出结果是【 14】main() int x=0;sub(&x,8,1);36 / 46printf(%dn,x);sub(int *a,int n,int k) if(k=n) sub(a,n/2,2*k);*a+=k;(15) 设有如下宏定义#define MYSWAP(z,x,y) z=x; x=y; y=z; 以下程序段通过宏调用实现变量 a、b 内容交换 ,请填空 float a=5,b=16,c;MYSWAP( 【 15】 ,a,b);37 / 46(16) 以下程序用来统计文件中

23、字符个数。请填空#include stdio.hmain() FILE *fp; long num=0L;if(fp=fopen(fname.dat,r)=NULL) pirntf(Open errorn); exit(0);while( 【 16】 ) fgetc(fp); num+; printf(num=%1dn,num-1);fclose(fp);38 / 46(17) 以下程序中 ,select 函数的功能是:在 N 行 M 列的二维 数组中 ,选出一个最大值作为函数值返回 ,并通过形参传回此最大值所在的行下标。请填空。#define N 3#define M 3select(int aNM,int *n) int i,j,row=1,colum=1;for(i=0;iN;i+)for(j=0;jarowcolum)row=i;colum=j;*n= 【17】 ;return 【18】;39 / 46main()int aNM=9,11,23,6,1,15,9,17,20,max,n;max=select(a,&n);printf(max=%d,line=%dn,max,n);(18) mystrlen 函数的功能是计算 str 所指字符串的长度 ,并作 为函数值返回。请填空。int mystrle

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论