C语言笔试模拟2.docx

上传人:b****4 文档编号:3484392 上传时间:2022-11-23 格式:DOCX 页数:16 大小:20.51KB
下载 相关 举报
C语言笔试模拟2.docx_第1页
第1页 / 共16页
C语言笔试模拟2.docx_第2页
第2页 / 共16页
C语言笔试模拟2.docx_第3页
第3页 / 共16页
C语言笔试模拟2.docx_第4页
第4页 / 共16页
C语言笔试模拟2.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

C语言笔试模拟2.docx

《C语言笔试模拟2.docx》由会员分享,可在线阅读,更多相关《C语言笔试模拟2.docx(16页珍藏版)》请在冰豆网上搜索。

C语言笔试模拟2.docx

C语言笔试模拟2

洞庭软件园2012年C语言笔试模拟题02---------绝密保存中

一、选择题本题共得(0)分

(1)下列关于队列的叙述中正确的是

A)在队列中只能插入数据

B)在队列中只能删除数据

C)队列是先进先出的线性表

D)队列是先进后出的线性表

正确答案:

C

(2)对于存储同样的一组数据元素而言

A)顺序结构比链接结构易于扩充空间

B)顺序结构与链接结构相比,更有利于对元素进行插入、删除运算

C)顺序结构占用整块空间,而链接结构不要求整块空间

D)顺序结构比链接结构多占存储空间

正确答案:

C

(3)算法的有穷性是指

A)算法程序的运行时间是有限的

B)算法程序所处理的数据量是有限的

C)算法程序的长度是有限的

D)算法只能被有限的用户使用

正确答案:

A

(4)下面描述中,不属于软件危机表现的是

A)软件过程不规范

B)软件质量难以控制

C)软件开发生产率低

D)软件成本不断提高

正确答案:

A

(5)软件的设计又称总体结构设计,其主要任务是建立软件系统的总体结构。

A)概要

B)抽象

C)逻辑

D)规划

正确答案:

A

(6)下列叙述中,正确的是

A)用E-R图能够表示实体集间一对一的联系、一对多的联系和多对多的联系

B)用E-R图只能表示实体集之间一对一的联系

C)用E-R图只能表示实体集之间一对多的联系

D)用E-R图表示的概念数据模型只能转换为关系数据模型

正确答案:

A

(7)结构化程序设计主要强调的是

A)程序的规模

B)程序的效率

C)程序设计语言的先进性

D)程序易读性

正确答案:

D

(8)下面关于数据库系统中叙述正确的是

A)数据库系统减少了数据冗余

B)数据库系统避免了一切冗余

C)数据库系统中数据的一致性是指数据类型的一致

D)数据库系统比文件系统能管理更多的数据

正确答案:

A

(9)层次型、网状型和关系型数据库的划分原则是

A)数据之间的联系方式

B)记录长度

C)联系的复杂程度

D)文件的大小

正确答案:

A

(10)有两个关系R和T如下:

则由关系R得到关系T的操作是

A)选择B)投影C)交D)并

正确答案:

A

(11)下列叙述中错误的是

A)一个C语言程序只能实现一种算法

B)C程序可以由多个程序文件组成

C)C程序可以由一个或多个函数组成

D)一个C函数可以单独作为一个C程序文件存在

正确答案:

A

(12)按照C语言规定的用户标识符命名规则,不能出现在标识符中的是

A)大写字母

B)连接符

C)数字字符

D)下划线

正确答案:

B

(13)以下选项中不属于字符常量的是

A)′′E′′

B)′E′

C)′\xCC′

D)′\072′

正确答案:

A

(14)以下定义语句中正确的是

A)inta=b=0;

B)charA=65+1,b='b';

C)floata=1,*b=&a,*c=&b;

D)doublea=0.0;b=1.1;

正确答案:

B

(15)设有定义:

floatx=123.4567;则执行以下语句后的输出结果是

printf("%f\n",(int)(x*100+0.5)/100.0);

A)123.460000

B)123.456700

C)123.450000

D)123

正确答案:

A

(16)设有定义:

intm=0;。

以下选项的四个表达式中与其他三个表达式的值不相同的是

A)++m

B)m+=1

C)m++

D)m+1

正确答案:

C

(17)若变量已正确定义,有以下程序段

inta=3,b=5,c=7;

if(a>b)a=b;c=a;

if(c!

=a)c=b;

printf("%d,%d,%d\n",a,b,c);

其输出结果是

A)程序段有语法错

B)3,5,3

C)3,5,5

D)3,5,7

正确答案:

B

(18)若有定义floatx=1.5;inta=1,b=3,c=2;,则正确的switch语句是

A)switch(x)B)switch((int)x);

{case1.0:

printf("*\n");{case1:

printf("*\n");

case2.0:

printf("**\n");case2:

printf("**\n");}

C)switch(a+b)D)switch(a+b)

{case1:

printf("*\n");{case1:

printf("*\n");

case2+1:

printf("**\n");}casec:

printf("**\n");}

正确答案:

B

(19)设有以下程序段

intx=0,s=0;

while(!

x!

=0)s+=++x;

printf("%d",s);

A)运行程序段后输出0

B)运行程序段后输出1

C)程序段中的控制表达式是非法的

D)程序段执行无限次

正确答案:

B

(20)有以下程序:

#include

main()

{ int n=2,k=0;

while(k++&&n++>2);

printf("%d %d\n",k,n);

}

程序运行后的输出结果是

A)0 2

B)1 3

C)5 7

D)1 2

正确答案:

D

(21)若有定义:

intx=0,*p=&x;,则语句printf("%d\n",*p)的输出结果是

A)随机值

B)0

C)x的地址

D)p的地址

正确答案:

B

(22)以下叙述中错误的是

A)C语句必须以分号结束

B)复合语句在语法上被看作一条语句

C)空语句出现在任何位置都不会影响程序运行

D)赋值表达式末尾加分号就构成赋值语句

正确答案:

C

(23)有以下程序

#include

intf(intx)

{inty;

if(x==0||x==1)return(3);

y=x*x-f(x-2);

returny;

}

main()

{intz;

z=f(3);

printf("%d\n",z);

}

程序的运行结果是

A)0

B)9

C)6

D)8

正确答案:

C

(24)在C语言中,运算对象必须是整型数的运算符是

A)%

B)\

C)%和\

D)**

正确答案:

A

(25)设有定义语句int(*f)(int);,则以下叙述正确的是

A)f是基类型为int的指针变量

B)f是指向函数的指针变量,该函数具有一个int类型的形参

C)f是指向int类型一维数组的指针变量

D)f是函数名,该函数的返回值是基类型为int类型的地址

正确答案:

B

(26)以下不能正确定义二维数组的选项是

A)inta[2][2]={{1},{2}};

B)inta[][2]={1,2,3,4};

C)inta[2][2]={{1},2,3}

D)inta[2][]={{1,2},{3,4}}

正确答案:

D

(27)若要求从键盘读入含有空格字符的字符串,应使用函数

A)getc()

B)gets()

C)getchar()

D)scanf()

正确答案:

B

(28)以下程序运行后的输出结果是

main()

{charc;intn=100;

floatf=10;doublex;

x=f*=n/=(c=50);

printf("%d%f\n",n,x);

}

A)220.000000

B)10020.000000

C)240.000000

D)10040.000000

正确答案:

A

(29)以下叙述中错误的是

A)改变函数形参的值,不会改变对应实参的值

B)函数可以返回地址值

C)可以给指针变量赋一个整数作为地址值

D)当在程序的开头包含头文件stdio.h时,可以给指针变量赋NULL

正确答案:

C

(30)以下是if语句的基本形式:

 if(表达式)语句

其中"表达式"________。

A)必须是逻辑表达式

B)必须是关系表达式

C)必须是逻辑表达式或关系表达式

D)可以是任意合法的表达式

正确答案:

D

(31)现有如下程序段

#include"stdio.h"

main()

{inta[5][6]={23,3,65,21,6,78,28,5,67,25,435,76,8,22,45,7,8,34,6,78,32,4,5,67,4,21,1};

inti=0,j=5;

printf("%d\n",*(&a[0][0]+2*i+j-2));}

则程序的输出结果为

A)78

B)23

C)21

D)28

正确答案:

C

(32)下面程序的输出结果是

#include

#include

main()

{charp1[20]="abc",*p2="ABC",str[50]="xyz";

strcpy(str+2,strcat(p1,p2));

printf("%s\n",str);}

A)xyzabcABC

B)zabcABC

C)xyabcABC

D)yzabcABC

正确答案:

C

(33)有以下程序,程序中库函数islower(ch)用以判断ch中的字母是否为小写字母

#include

#include

voidfun(char*p)

{ inti=0;

while(p[i])

{ if(p[i]==''&&islower(p[i-1]))p[i-1]=p[i-1]-'a'+'A';

i++;

}

}

main()

{ charsl[100]="abcdEFG!

";

fun(s1);printf("%s\n",s1);

}

程序运行后的输出结果是

A)abcdEFG!

B)AbCdEFg!

C)aBcDEFG!

D)abcdEFg!

正确答案:

C

(34)以下程序运行后的输出结果是。

  voidswap(intx,inty)

  {intt;

  t=x;x=y;y=t;

  }

  main()

  {inta=15,b=16;

  swap(a,b);printf("%d%d",a,b);

}

A)15,16

B)16,15

C)15,15

D)16,16

正确答案:

A

(35)有以下程序

#include

structSTU

{charname[10];

intnum;

};

voidf(char*name,intnum)

{structSTUs[2]={{"SunDan",20044},{"Penghua",20045}};

num=s[0].num;

strcpy(name,s[0].name);

}

main()

{structSTUs[2]={{"YangSan",20041},{"LiSiGuo",20042}},*p;

p=&s[1];f(p->name,p->num);

printf("%s%d\n",p->name,p->num);

}

程序运行后的输出结果是

A)SunDan20042

B)SunDan20044

C)LiSiGuo20042

D)YangSan20041

正确答案:

A

(36)以下程序的输出结果是

#include

inta[3][3]={1,3,5,7,9,11,13,15,17,},*p;

main()

{p=(int*)malloc(sizeof(int));

f(p,a);

printf("%d\n",*p);

free(p);

}

f(int*s,intp[][3])

{*s=p[1][1];}

A)1

B)7

C)9

D)13

正确答案:

C

(37)在C语言中,变量的隐含存储类别是

A)auto

B)static

C)extern

D)无存储类别

正确答案:

A

(38)以下选项中,能定义s为合法的结构体变量的是

A)typedefstructABC

{doublea;

charb[10];

}s;

B)struct

{doublea;

charb[10];

}s;

C)structABC

{doublea;

charb[10];

}

ABCs;

D)typedefABC

{doublea;

charb[10];

}

ABCs;

正确答案:

B

(39)以下程序运行后的输出结果是

#include

main()

{charm[20]={'a','b','c','d'},n[]="abc",k[]="abcde";

strcpy(m+strlen(n),k);strcat(m,n);

printf("%d%d\n",sizeof(m),strlen(m));

}

A)2011

B)99

C)209

D)1111

正确答案:

A

(40)以下程序的运行结果是

#include

main()

{inta=1,b=2,c=3,x;

x=(a^b)&c;printf("%d\n",x);}

A)0

B)1

C)2

D)3

正确答案:

D

 

二、填空题本题共得(0)分

(1)设有下列二叉树:

对此二叉树中序遍历的结果为【1】。

未做题

正确答案:

DBEAFC

(2)软件需求规格说明书应具有完整性、无歧义性、正确性、可验证性、可修改性等特性,其中最重要的是【2】。

未做题

正确答案:

无歧义性

(3)数据库系统在三级模式之间提供了两层映射,这两层映射是【3】和模式/内模式映射。

未做题

正确答案:

外模式/模式

(4)测试的目的是暴露错误,评价程序的可靠性;而【4】的目的是发现错误的位置并改正错误。

未做题

正确答案:

程序调试

(5)关系模型的完整性规则是对关系的某种约束条件,包括实体完整性、【5】和自定义完整性。

未做题

正确答案:

参照完整性

(6)已知字符A的ASCII代码值为65,以下程序运行时若从键盘输入:

B33<回车>,则输出结果是【6】。

#include

main()

{chara,b;

a=getchar();scanf("%d",&b);

a=a-'A'+'0';b=b*2;

printf("%c%c\n",a,b);

}

未做题

正确答案:

1B

(7)以下程序的定义语句中,x[1]的初值是【7】,程序运行后输出的内容是【8】。

#include

main()

{intx[]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16},*p[4],i;

for(i=0;i<4;i++)

{p[i]=&x[2*i+1];

printf("%d",p[i][0]);

}

printf("\n");)

}

未做题

未做题

正确答案:

2~~2468

(8)以下函数rotate的功能是:

将a所指N行N列的二维数组中的最后一行放到b所指二维数组的第0列中,把a所指二维数组中的第0行放到b所指二维数组的最后一列中,b所指二维数组中其他数据不变。

请填空。

#defineN4

voidrotade(inta[][N],intb[][N])

{intI,j;

for(I=0;I

{b[I][N-1]=【9】;【10】=a[N-1][I];}}

正确答案:

a[0][I]~~b[I][0]

(9)以下程序的运行结果是【11】。

#include

main()

{intfun();fun();}

fun()

{staticinta[3]={0,1,2};

inti;

for(i=0;i<3;i++)a[i]+=a[i];

for(i=0;i<3;i++)printf("%d,",a[i]);

printf("\n");}

 

正确答案:

0,2,4

(10)以下程序的输出结果是【12】。

intfun(int*x,intn)

{if(n==0)returnx[0];

elsereturnx[0]+fun(x+1,n-1);

}

main()

{inta[]={1,2,3,4,5,6,7};printf("%d\n",fun(a,3));}

 

正确答案:

10

(11)以下程序用来输出结构体变量ex所占存储单元的字节数,请填空。

structst

{charname[20];doublescore;};

main()

{structstex;

printf("exsize:

%d\n",sizeof(【13】));}

正确答案:

ex

(12)以下程序的功能是从名为filea.dat的文本文件中逐个读入字符并显示在屏幕上。

请填空。

#include

main()

{FILE*fp;charch;

fp=fopen(【14】);

ch=fgetc(fp);

while(【15】(fp)){putchar(ch);ch=fgetc(fp);}

putchar('\n');fclose(fp);

}

 

正确答案:

"filea.dat","r"~~!

feof

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1