资源预览内容
第1页 / 共38页
第2页 / 共38页
第3页 / 共38页
第4页 / 共38页
第5页 / 共38页
第6页 / 共38页
第7页 / 共38页
第8页 / 共38页
第9页 / 共38页
第10页 / 共38页
亲,该文档总共38页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
全国计算机等级考试二级全国计算机等级考试二级 C 语言笔试题库语言笔试题库 一、选择题 在下列各题的 A) 、B) 、C) 、D)四个选项中,只有一个选项是 正确的,请将正确的选项涂写在答题卡相应位置上,答在试卷 上不得分。 (1) 为了避免流程图在描述程序逻辑时的灵活性,提出了用方框 图来代替传统的程序流程图,通常也把这种图称为 A)PAD 图 B)NS 图 C)结构图 D)数据流图 (2)结构化程序设计主要强调的是 A)程序的规模 B)程序的效率 C)程序设计语言的 先进性 D)程序易读性 (3)为了使模块尽可能独立,要求 A)模块的内聚程度要尽量高,且各模块间的耦合程度要尽 量强 B)模块的内聚程度要尽量高,且各模块间的耦合程度 要尽量弱 C)模块的内聚程度要尽量低,且各模块间的耦合 程度要尽量弱 D)模块的内聚程度要尽量低,且各模块间的耦合程度要尽 量强 (4)需求分析阶段的任务是确定 A)软件开发方法 B)软件开发工具 C)软件开发费用 D)软件系统功能 (5)算法的有穷性是指 A)算法程序的运行时间是有限的 B)算法程序所处理的 数据量是有限的 C)算法程序的长度是有限的 D)算法只 能被有限的用户使用 (6)对长度为 n 的线性表排序,在最坏情况下,比较次数不是 n(n1)/2 的排序方法是 A)快速排序 B)冒泡排序 C)直接插入排序 D)堆排序 (7)如果进栈序列为 e1,e2,e3,e4,则可能的出栈序列是 A)e3,e1,e4,e2 B)e2,e4,e3,e1 C)e3,e4,e1,e2 D) 任意顺序 (8)将 ER 图转换到关系模式时,实体与联系都可以表示成 A)属性 B)关系 C)键 D)域 (9)有三个关系 R、S 和 T 如下: R B C D a 0 k1 b 1 n1 S B C D f 3 h2 a 0 k1 n 2 x1 T B C D a 0 k1 由关系 R 和 S 通过运算得到关系 T,则所使用的运算为 A)并 B)自然连接 C)笛卡尔积 D) 交(10)下列有关数据库的描述,正确的是 A)数据处理是将信息转化为数据的过程 B)数据的物理独立性是指当数据的逻辑结构改变时,数据的 存储结构不变 C)关系中的每一列称为元组,一个元组就是一个字段 D)如果一个关系中的属性或属性组并非该关系的关键字, 但它是另一个关系的关键字,则称其为本关系的外关键字 (11)以下叙述中正确的是 A)用 C 程序实现的算法必须要有输入和输出操作 B)用 C 程 序 实 现 的 算 法 可 以 没 有 输 出 但 必 须 要 有 输 入 C)用 C 程序实现的算法可以没有输入但必须要有输出 D)用 C 程序实现的算法可以既没有输入也没有输出 (12)下列可用于 C 语言用户标识符的一组是 A)void, define, WORD B)a3_3,_123,Car C)For, abc, IF Case D)2a, DO, sizeof (13)以下选项中可作为 C 语言合法常量的是 A)80 B)080 C)8e1.0 D)80.0e (14)若有语句:char *line5,以下叙述中正确的是 A) 定义 line 是一个数组,每个数组元素是一个基类型为 char 为指针变量 B) 定义 line 是一个指针变量,该变量可以 指向一个长度为5的字符型数组 C) 定义line是一个指针数 组,语句中的*号称为间址运算符 D) 定义 line 是一个指向字 符型函数的指针 (15)以下定义语句中正确的是 A)int a=b=0 B)char A=65+1,b=b C)float a=1,*b=&a,*c=&b D)double a=00b=1.1 (16)有以下程序段 char ch int k ch=a k=12 printf(“%c,%d,“,ch,ch,k) printf(“k=%d n“,k) 已知字符a的ASCII码值为97,则执行上述程序段后输出结果是 A)因变量类型与格式描述符的类型不匹配输出无定值 B)输出项与格式描述符个数不符,输出为零值或不定值 C)a,97,12k=12 D)a,97,k=12 (17)有以下程序 main() int i,s=1 for (i=1i=2& c=2&c=2& cb) a=b c=a if(c!=a) c=b printf(“%d,%d,%dn“,a,b,c) 其输出结果是 A) 程 序 段 有 语 法 错 B)3,5,3 C)3,5,5 D)3,5,7 (20)有以下程序 #include main() int x=1,y=0,a=0,b=0 switch(x) case 1: switch(y) case 0:a+ break case 1:b+ break case 2:a+ b+ break case 3:a+ b+ printf(“a=%d,b=%dn“,a,b) 程序的运行结果是 A)a=1,b=0 B)a=2,b=2 C)a=1,b=1 D)a=2,b=1 (21)下列程序的输出结果是 #include “stdio.h“ main() int i,a=0,b=0 for(i=1i0j+=2) s=10*s+pij0 printf(“%dn“,s) 该程序的输出结果是 A)69825 B)63825 C)6385 D)693825 (27)有定义语句:char s10,若要从终端给 s 输入 5 个字符, 错误的输入语句是 A)gets(&s0) B)scanf(“%s“,s+1) C)gets(s) D)scanf(“%s“,s1) (28)以下叙述中错误的是 A)在程序中凡是以“#“开始的语句行都是预处理命令行 B) 预 处 理 命 令 行 的 最 后 不 能 以 分 号 表 示 结 束 C)#define MAX 是合法的宏定义命令行 D)C 程序对预处 理命令行的处理是在程序执行的过程中进行的 (29)设有以下说明语句 typedef struct int nchar ch8 PER 则下面叙述中正确的是 A)PER 是结构体变量名 B)PER 是结构体类型名 C)typedef struct 是结构体类型 D)struct 是结构体类型名 (30)以下叙述中错误的是 A)gets 函数用于从终端读入字符串 B)getchar 函数用 于从磁盘文件读入字符 C)fputs函数用于把字符串输出到文件 D)fwrite函数用 于以二进制形式输出数据到文件 (31)以下能正确定义一维数组的选项是 A)int a5=0,1,2,3,4,5 B)char a=0,1,2,3,4,5,0 C)char a=A,B,C D)int a5=“0123“ (32)有以下程序 #include main() char p=a, b, c,q10= a, b, c printf(“%d%dn“,strlen(p),strlen(q) 以下叙述中正确的是 A) 在给 p 和 q 数组置初值时,系统会自动添加字符串结束 符,故输出的长度都为 3 B) 由于 p 数组中没有字符串结束符,长度不能确定,但 q 数 组中字符串长度为 3 C) 由于 q 数组中没有字符串结束符,长度不能确定,但 p 数 组中字符串长度为 3 D) 由于 p 和 q 数组中都没有字符串结束符,故长度都不能 确定 (33)有以下程序 #include #include void fun(char *s,int n) char *t i nt i,j for(i=0istrlen(sj) t=sisi:sjsj=t main() char *ss=“bcc“,“bbcc“,“xy“,“aaaacc“,“aabcc“ fun(ss,5) printf(“%s,%sn“,ss0,ss4) 程序的运行结果是 A)xy,aaaacc B)aaaacc,xy C)bcc,aabcc D)aabcc,bcc (34)有以下程序 #include int f(int x) int y if(x=0|x=1) return(3) y=x*x f(x2) return y main() int z z=f(3) printf(“%dn“,z) 程序的运行结果是 A)0 B)9 C)6 D)8 (35)下面程序段的运行结果是 char str=“ABC“,*p=str printf(“%dn“,*(p+3) A)67 B)0 C)字符C的地址 D)字符C (36)若有以下定义: struct link int data struct link *next a,b,c,*p,*q 且变量 a 和 b 之间已有如下图所示的链表结构: 指针 p 指向变量 a,q 指向变量 c。 则能够把 c 插入到 a 和 b 之间 并形成新的链表的语句组是: A)a.next=c c.next=b B)p.next=q q.next=p.next C)pnext=&c qnext=pnext D)(*p).next=q (*q).next=&b (37)对于下述程序,在方式串分别采用“wt“和“wb“运行时,两次 生成的文件 TEST 的长度分别是 #include void main() FILE *fp=fopen(“TEST“,) fputc(A,fp)fputc(n,fp) fputc(B,fp)fputc(n,fp) fputc(C,fp) fclose(fp) A)7 字节、7 字节 B)7 字节、5 字节 C)5 字节、7 字 节 D)5 字节、5 字节 (38)变量 a 中的数据用二进制表示的形式是 01011101,变量 b 中的数据用二进制表示的形式是 11110000。若要求将 a 的高 4 位取反,低 4 位不变,所要执行的运算是 A)ab B)a|b C)a&b D)a4) printf(“%dn“,i) break printf(“%dn“,i+) (9)以下程序的定义语句中,x1的初值是 【9】 ,程序运行 后输出的内容是 【10】 。 #include main() int x=1,2,3,4,5,6,7,8,9,10,11,1
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号