二级C语言笔试模拟96.docx
- 文档编号:16445384
- 上传时间:2023-07-13
- 格式:DOCX
- 页数:33
- 大小:32.56KB
二级C语言笔试模拟96.docx
《二级C语言笔试模拟96.docx》由会员分享,可在线阅读,更多相关《二级C语言笔试模拟96.docx(33页珍藏版)》请在冰点文库上搜索。
二级C语言笔试模拟96
二级C语言笔试模拟96
一、选择题
下列各题A)、B)、C)、D)四个选项中,只有—个选项是正确的。
1、算法的时间复杂度是指______。
A)执行算法程序所需要的时间
B)算法程序的长度
C)算法执行过程中所需要的基本运算次数
D)算法程序中的指令条数
2、下列叙述中正确的是______。
A)线性表是线性结构 B)栈与队列是非线性结构
C)线性链表是非线性结构 D)二叉树是线性结构
3、下面关于完全二叉树的叙述中,错误的是______。
A)除了最后—层外,每—层上的结点数均达到最大值
B)可能缺少若干个左右叶子结点
C)完全二叉树—般不是满二叉树
D)具有结点的完全二叉树的深度为[log2n]+1
4、结构化程序设计主要强调的是______。
A)程序的规模 B)程序的易读性
C)程序的执行效率 D)程序的可移植性
5、在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是______。
A)概要设计 B)详细设计 C)可行性分析 D)需求分析
6、数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。
下列图符名标识的图符不属于数据流图合法图符的是______。
A)控制流 B)加工 C)数据存储 D)源和潭
7、软件需求分析一般应确定的是用户对软件的______。
A)功能需求 B)非功能需求 C)性能需求 D)功能需求和非功能需求
8、下述关于数据库系统的叙述中正确的是______。
A)数据库系统减少了数据冗余
B)数据库系统避免了一切冗余
C)数据库系统中数据的一致性是指数据类型的一致
D)数据库系统比文件系统能管理更多的数据
9、关系表中的每一横行称为一个______。
A)元组 B)字段 C)属性 D)码
10、数据库设计包括两个方面的设计内容,它们是______。
A)概念设计和逻辑设计 B)模式设计和内模式设计
C)内模式设计和物理设计 D)结构特性设计和行为特性设计
11、请读程序:
#include<stdio.h>
main()
{
inta;floatb,c;
scanf("%2d%3t%4f",&a,&b,&c);
printf("\na=%d,b=%f,c=%f\n",a,b,c);
}
若运行时从键盘上输入(图片),则上面程序的输出结果是______。
A)a=98,b=765,c=4321
B)a=10,b=432,c=8765
C)a=98,b=765.000000,c=4321.000000
D)a=98,b=765.0,c=4321.0
12、一个良好的算法由下面的基本结构组成,但不包括______。
A)顺序结构 B)选择结构 C)循环结构 D)跳转结构
13、请选出以下程序的输出结果______。
#include<stdio.h>
sub(x,y,z)
intx,y,*z;
{*z=y-x;}
main(){
inta,b,c;
sub(10,5,&a);sub(7,a,&b);sub(a,b,&c);
printf("%d,%d,%d\n",a,b,c);
}
A)5,2,3 B)-5,-12,-7 C)-5,-12,-17 D)5,-2,-7
14、下面程序在屏幕上的输出是______。
main()
{
printf("ab\b\bc");
}
A)ab\b\bc B)ac C)abc D)abc
15、若x是整型变量,pb是基类型为整型的指针变量,则正确的赋值表达式是______。
A)pb=&x; B)pb=x; C)*pb=&x; D)*pb=*x
16、设整型数i=5,则printf("%d",i+++++i);的输出为______。
A)10 B)11 C)12 D)语法错误
17、若要用下面的程序片段使指针变量p指向一个存储整型变量的动态存储单元
int *p
p=______malloc(sizeof(int));
则应填入______。
A)int B)int* C)(*int) D)(int*)
18、下面程序输出的结果是______。
main()
{
inti=5,j=9,x;
x=(i==j?
i:
(j=7));
printf("\n%d,%d",i,j);
}
A)5,7 B)5,5 C)语法错误 D)7,5
19、若执行下面程序时从键盘上输入5,
main()
{
intx;
scanf("%d",&x);
if(x++>5)printf("%d\n",x);
elseprintf("%d\n",x-);
则输出是______。
A)7 B)6 C)5 D)4
20、若有以下定义和语句:
inta[]={1,2,3,4,5,6,7,8,9,10},*p=a;
则值为3的表达式是______。
A)p+=2,*(p++) B)P+=2,*++p
C)P+=3,*p++ D)P+=2,++*p
21、设a、b和c都是int型变量,且a=3、b=4、c=5,则下面的表达式中,值为0的表达式是______。
A)'a'&&'b' B)a<=b C)a||+c&&b-c D)!
((a<b)&&!
c||1)
22、以下程序运行后,输出结果是______。
main()
{
char*d[]={"ab","cde"};
printf("%x",d[1]);
}
A)cde B)字符c的AScII码值
C)字符c的地址 D)出错
23、设有如下程序
#include<stdio.h>
main()
{
int**k,*j,i=100;
j=&i; k=&j;
printf("%d\n"”,**k);
}
上述程序的输出结果是______。
A)运行错误 B)100 C)i的地址 D)j的地址
24、设有以下语句,其中不是对a数组元素的正确引用的是:
______(其中0≤i<10)
inta[10]={0,1,2,3,4,5,6,7,8,9,},*p=a;
A)a[p-a] B)*(&a[i]) C)p[i] D)*(*(a+i))
25、以下程序运行后,输出结果为______。
main()
{
inta[2][3]={1,3,5,7,9,11},*s[2],**pp,*p;
s[0]=a[0],s[1]=a[1];
pp=s;
p=(int*)malloc(sizeof(int));
**pp=s[1][1];
p=*pp;
printf("%d\n",*p);
}
A)1 B)7 C)9 D)11
26、有以下程序:
#include<stdio.h>
main(){
charc[6];
inti=0;
for(;i<6;c[i]=getchar(),i++);
for(i=0;i<6;i++)putchar(c[i];
printf("\n");
}
如果从键盘上输入:
ab<回车>
c<回车>
def<回车>
则输出结果为______。
A)a
b
c
d
e
f
B)a
b
c
d
C)ab
c
d
D)abcdef
27、在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是______。
A)地址传递
B)单向值传递
C)由实参传递给形参,再由形参传递给实参
D)传递方式由用户指定
28、以下程序
#include<stdio.h>
#include<string.h>
main()
{ char*p1="abc",*p2="ABC",str[50]="xyz";
strcpy(ar+2,strcat(p1,p2));
printf("%s\n",str);
}
的输出是______。
A)xyzabcABC B)zabeABC
C)yzabcABC D)xyabcABC
29、以下程序
intaa[3][3]={{2},{4},{6}};
main()
{ inti,*p=&aa[0][0];
for(i=0;i<2;i++){
if(i==0)aa[i][i+1]=*p+1;
else ++p;
printf("%d",*p);
}
}
的输出是______。
A)23 B)26 C)33 D)36
30、以下程序的输出结果是______。
#include<stdio.h>
#include<siring.h>
fun(char*w,intn)
{
chart,*s1,*s2;
s1=w;s2=w+n-1;
while(s1<s2)
{
t=*s1++;
*s1=*s2-;
*s2=t;
}
}
main()
{
char*p;
p="1234567";
fun(p,strlen(p));
puts(p);
}
A)1234567 B)7654321 C)1711717 D)7177171
31、下面程序
main()
{ intx=100,a=10,b=20,ok1=5,ok2=0;
if(a<b)
if(b!
=15)
if(!
ok1)x=1;
elseif(ok2)x=10;
x=1;
printf("%d\n",x);
}
的输出是______。
A)-1 B)0 C)1 D)不确定的值
32、下面程序
main()
{
intx=32;
printf("%d\n",x=x<<1);
}
的输出是______。
A)100 B)160 C)120 D)64
33、设有以下定义和语句,输出的结果是(用small模式编译,指针变量2个字节)______。
structdate
{
long*cat;
structdate*next;
doubledog;
}too;
printf("%d",sizeof(too));
A)20 B)16 C)14 D)12
34、以下程序的输出结果是______。
#include<stdio.h>
#defineFUDGE(y) 2.84+y
#definePR(a) printf("%d",(int)(a))
#definePRINT1(a)PR(a);putchar('\n')
main()
{ intx=2;
PRINT1(FUDGE(5)*x);
}
A)11 B)12 C)13 D)15
35、以下程序段给数组所有的元素输入数据,请选择正确答案填入。
#include<stdio.h>
main()
{
inta[10],i=0;
while(i<10)scanf("%d",______);
}
A)a+(i++) B)&a[i+1] C)a+i D)&a[++i]
36、以下对枚举类型名的定义中正确的是______。
A)enuma={one,two,three}; B)enuma{on=9,two=-1,three};
C)enuma={"one","two","three"}; D)enuma{"one","two","three"};
37、字符(char)型数据在微机内存中的存储形式是______。
A)反码 B)补码
C)EBCDIC码 D)ASCII码
38、下面程序的输出是______。
typedefunion
{ longx[2];
inty[4];
charz[8];
}MYTYPE;
MYTYPEthem;
mare()
{ printf("%d\n",sizeof(them));}
A)32 B)16 C)8 D)24
39、有以下程序,程序运行后的输出结果是______。
intf(intb[][4])
{ inti,j,s=0;
for(j=0;j<4;j++)
{
i=j;
if(i>2)i=3-j;
s+==b[i][j];
}
returns;
}
main()
{
inta[4][4]={{1,2,3,4},{0,2,4,6},{3,6,9,12},{3,2,1,0}};
printf("%d\n",f(a));
}
A)22 B)11 C)18 D)16
40、不能把字符串"Hello!
"赋给数组b的语句是______。
A) charb[10]={'H','e','l','l','o','!
'};
B) charb[10]={'h','e','l','l','o','!
'};
C) charb[10];strcpy(b,"Hello!
");
D) charb[10]="Hello!
";
41、下面程序的输出是______。
main()
{intx=3,y=6,a=0;
while(x++!
=(y-=1))
{a+=1;
if(y<x)break;
}
printf("x=%d,y=%d,a=%d\n",x,y,a);
}
A)x=4,y=4,a=1 B)x=5,y=5,a=1
C)x=5,y=4,a=3 D)x=5,y=4,a=1
42、若有程序
fun(inta,intb)
{
staticintc=0;
c+=a+b;
rerurnc;
}
main()
{
intx=5,y=3,z=7,r;
r=fun(y,x+y),z);
r=fun(x,y);
printf("%d\n",r);
}
上面程序的输出结果是______。
A)23 B)15 C)19 D)18
43、下面程序的输出是______。
main()
{char*s="12134211";
intv1=0,v2=0,v3=0,v4=0,k;
for(k=0;s[k];k++)
switch(s[k])
{ default:
v4++;
case'1':
v1++;
case'3':
v3++;
case'2':
v2++;
}
printf("v1=%d,v2=%d,v3=%d,v4=%d\n",v1,v2,v3,v4);
}
A)v1=4,v2=2,v3=1,v4=1 B)v1=4,v2=9,v3=3,v4=1
C)v1=5,v2=8,v3=6,v4=1 D)v1=8,v2=8,v3=8,v4=8
44、下面程序的输出是______。
main()
{intk=11;
printf("k=%d,k=%o,k=%x\n",k,k,k);
}
A)k=11,k=12,k=11 B)k=11,k=13,k=13
C)k=11,k=013,k=0xb D)k=11,k=13,k=B
45、下面程序段中c的二进制值是______。
chara=3,b=6,c;
c=a^b<<1;
A)00001011 B)00001111 C)00011110 D)00011100
46、以下叙述中正确的是______。
A)C语言比其他语言高级
B)C语言可以不用编译就能被计算机识别执行
C)C语言以接近英语国家的自然语言和数学语言作为语言的表达形式
D)C语言出现的最晚,具有其他语言的—切优点
47、下列司用于C语言用户标识符的—组是______。
A)voiddefineWORD B)a3_b3_123Car
C)For-abcIFCase D)2aDOsizeof
48、fgetc函数的作用是从指定文件读入—个字符,该文件的打开方式必须是______。
A)只读 B)追加 C)读或读写 D)以上均正确
49、请选出正确的程序段______。
A)int*p
scanf(""%d"",p);
……
B)int*s,k;
*s=100;
……
C)int*s,k;
char*p,c;
s=&k;
p=&c;
*p='a';
……
D)int*s,k;
char*p,e;
s=&k;
p=&c;
s=p;
*s=1;
……
50、若有下面的说明和定义,则sizeof(structaa)的值是______。
structaa
{
intr1;doubler2;floatr3;
unionuu{charu1[5];longu2[2]}ua;
}mya;
A)30 B)29 C)24 D)22
二、填空题
1、在先左后右的原则下,根据访问根结点的次序,二叉树的遍历可以分为三种:
前序遍历、 【1】 遍历和后序遍历。
2、结构化程序设计方法的主要原则可以概括为自顶向下、逐步求精、 【2】 和限制使用goto语句。
3、软件测试是保证软件质量的重要手段,而软件测试的主要和重要的测试方法是通过测试数据和 【3】 的设计来实现。
4、数据库系统的三级模式分别为 【4】 模式、内部级模式与外部级模式。
5、数据字典是各类数据描述的集合,它通常包括5个部分,即数据项、数据结构、数据流、 【5】 和处理过程。
6、下面程序的输出是 【6】 。
main()
{intarr[10],i,k=0;
for(i=0;i<10;i++)
arr[i]=i;
fov(i=1;i<4;i++)
k+=arr[i]+i;
printf("%d\n",k);}
7、若a=10,b=20,则表达式!
(a<b)的值是 【7】 。
8、有以下程序
intfa(intx){returnx*x;}
intfb(intx){retumx*x*x;}
intf(int(*f1)(),int(*f2)(),intx)
{returnf2(x)-f1(x);}
main()
{inti;i=f(fa,fb,2);printf("%d\n",i);}
程序运行后,输出结果是 【8】 。
9、下面程序的输出是 【9】 。
main()
{enumern{em1=3,em2=1,em3};
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 二级 语言 笔试 模拟 96