《二级C语言笔试模拟题五.doc》由会员分享,可在线阅读,更多相关《二级C语言笔试模拟题五.doc(13页珍藏版)》请在金锄头文库上搜索。
1、二级C语言笔试模拟题五一、 选择题1.算法分析的目的是( ) A.找出数据结构的合理性 B.找出算法中输入和输出之间的关系 C.分析算法的易懂性和可靠性 D.分析算法的效率以求改进2.在单链表中,增加头结点的目的是( ) A.方便运算的 B.使单链表至少有一个结点 C.标识表结点中首结点的位置 D.说明单链表是线性表的链式存储实现3.软件开发离不开系统环境资源的支持,其中必要的测试数据属于( ) A.硬件资源 B.通信资源 C.支持软件 D.辅助资源4.分布式数据库系统不具有的特点是( ) A.数据分布性和逻辑整体性 B.位置透明性和复制透明性 C.分布性 D.数据冗余5.下列数据模型中,具有
2、坚实理论基础的是( ) A.层次模型 B.网状模型 C.关系模型 D.以上3个都是6.栈底到栈顶依次存放元素A、B、C、D,在第五个元素E入栈前,栈中元素可以出栈,则出栈序列可能是( ) A.ABCED B.DCBEA C.DBCEA D.CDABE7.在结构化程序设计思想提出之前,在程序设计中曾强调程序的效率,现在,与程序的效率相比,人们更重视程序的( ) A.安全性 B.一致性 C.可理解性 D.合理性8.软件开发的结构化生命周期方法将软件生命周期划分成( ) A.定义、开发、运行维护 B.设计阶段、编程阶段、测试阶段 C.总体设计、详细设计、编程调试 D.需求分析、功能定义、系统设计9.
3、在数据管理技术发展过程中,文件系统与数据库系统的主要区别是数据库系统具有( ) A.特定的数据模型 B.数据无冗余 C.数据可共享 D.专门的数据管理软件10.实体是信息世界中广泛使用的一个术语,它用于表示( ) A.有生命的事物 B.无生命的事物 C.实际存在的事物 D.一切事物11.下面叙述中正确的是( ) A.C语言编译时不检查语法 B.C语言的子程序有过程和函数两种 C.C语言的函数可以嵌套定义 D.C语言的函数可以嵌套调用12.以下叙述中正确的是( ) A.构成C程序的基本单位是函数 B.可以在一个函数中定义另一个函数 C.main()函数必须放在其他函数之前 D.所有被调用的函数一
4、定要在调用之前进行定义13.下列程序段的输出结果是( ) int a=1234;float b=123.456;double c=12345.54321;printf(%2d,%2.1f,%2.1f,a,b,c); A.无输出 B.12,123.5,12345.5 C.1234,123.5,12345.5 D.1234,123.4,1234.514.设有以下程序段int x=0,s=0;while(!x!=0)s+=+x;printf(%d,s);则( ) A.运行程序段后输出0 B.运行程序段后输出1 C.程序段中的控制表达式是非法的 D.程序段执行无限次15.以下程序段的描述,正确的是(
5、) x=-1;dox=x*x;while(!x); A.是死循环 B.循环执行两次 C.循环执行一次 D.有语法错误16.下列程序执行后的输出结果是( ) void func1(int i);void func2(int i);char st =hello,friend!;void func1(int i) printf(%c,sti); if(i3)i+=2;func2(i);void func2(int i) printf(%c,sti); if(i3)i+=2;func1(i);main() int i=0;func1(i);printf(n); A.hello B.hel C.hlo
6、D.hlm17.以下程序的输出结果是( ) #include void prt(int *x,int*y,int*z) printf(%d,%d,%dn,+*x,+*y,*(z+);main() int a=10,b=40,c=20; prt(&a,&b,&c); prt(&a,&b,&c); A.11,42,31 B.11,41,20 12,22,41 12,42,20 C.11,21,40 D.11,41,2118.下列程序执行后的输出结果是( ) main() int a33,*p,i; p=&a00; for(i=1;i9;i+)pi=i+1; printf(%dn,a12); A.3
7、 B.6 C.9 D.随机数19.下列程序执行后的输出结果是( ) main() char arr24; strcpy(arr,you);strcpy(arr1,me); arr03=&; printf(sn,arr); A.you&me B.you C.me D.err20.有以下程序int f(int n) if(n=1)return 1; else return f(n-1)+1;main() int i,j=0; for(i=1;i3;i+)j+=f(i); printf(%dn,j);程序运行后的输出结果是( ) A.4 B.3 C.2 D.121.以下对结构体类型变量的定义中,不正
8、确的是( ) A.typedef struct aa B.#define AA struct aa int n; AA int n; float m; float m; AA; tdl; AA tdl; C.struct D.struct int n; int n; float m; float m; aa; tdl; struct aa tdl;22.若有以下程序#include void f(int n);main() void f(int n); f(5);void f(int n) printf(%dn,n);则以下叙述中不正确的是( ) A.若只在主函数中对函数f进行说明,则只能在主
9、函数中正确调用函数f B.若在主函数前对函数f进行说明,则在主函数和其后的其他函数中都可以正确调用函数f C.对于以上程序,编译时系统会提示出错信息:提示对f函数重复说明 D.函数f无返回值,所以可用void将其类型定义为无返回值型23.有以下程序#include main() FILE *fp;int i=20,j=30,k,n; fp=fopen(d1.dat,w); fprintf(fp,%dn,i);fprintf(fp,%dn,j); fclose(fp); fp=fopen(d1.dat,r); fscanf(fp,%d%d,&k,&n);printf(%d%dn,k,n); fc
10、lose(fp);程序运行后的输出结果是( ) A.20 30 B.20 50 C.30 50 D.30 2024.下面4个选项中,均是不合法的用户标识符的选项是( ) A.A P_0 B.float la0 _A C.b-a goto int D._123 temp int25.能正确表示逻辑关系:“a10或a0”的C语言表达式是( ) A.a=10 or a=0a=10 &a=10a=026.若有说明:int *p,m=5,n;以下正确的程序段是( ) A.p=&n;scanf(%d,&p;) B.p=&n;scanf(%d,*p) C.scanf(%d,&n);*p=n; D.p=&n;
11、*p=m27.有如下程序main() int a=2,b=-1,c=2; if(ab) if(b0)c=0; else c+; printf(%dn,c);该程序的输出结果是( ) A.0 B.1 C.2 D.328.有一堆零件(100到200之间),如果分成4个零件一组的若干组,则多2个零件;若分成7个零件一组,则多3个零件;若分成9个零件一组,则多5个零件。下面程序是求这堆零件总数,在划线处应填入的选项是( ) #include main() int i; for(i=100;i200;i+) if(i-2)%4=0) if(!(i-3)%7) if(CD#5) printf(%d,i); A.i%9=5 B.i%9!=5 C.(i-5)%9!=0 D.(i-5)%9=029.下面程序段的运行结果是( ) char a =lanuage,*p;p=a;while(*p!=u)printf(%c,*p-32);p+; A.LANGUAGE B.language C.LAN D.langUAGE30.以下不正确的定义语句是( ) A.dou