C语言上机题库Word格式文档下载.docx

上传人:b****3 文档编号:17343498 上传时间:2022-12-01 格式:DOCX 页数:39 大小:143.77KB
下载 相关 举报
C语言上机题库Word格式文档下载.docx_第1页
第1页 / 共39页
C语言上机题库Word格式文档下载.docx_第2页
第2页 / 共39页
C语言上机题库Word格式文档下载.docx_第3页
第3页 / 共39页
C语言上机题库Word格式文档下载.docx_第4页
第4页 / 共39页
C语言上机题库Word格式文档下载.docx_第5页
第5页 / 共39页
点击查看更多>>
下载资源
资源描述

C语言上机题库Word格式文档下载.docx

《C语言上机题库Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《C语言上机题库Word格式文档下载.docx(39页珍藏版)》请在冰豆网上搜索。

C语言上机题库Word格式文档下载.docx

B)doublea=b=7;

C)doublea=7,b=7;

D)double,a,b;

(15)以下不能正确表示代数式2ab

cd

的C语言表达式是()。

A)2*a*b/c/dB)a*b/c/d*2C)a/c/d*b*2D)2*a*b/c*d

(16)C源程序中不能表示的数制是()。

A)二进制B)八进制C)十进制D)十六进制

(17)若有表达式(w)?

(--x):

(++y),则其中与w等价的表达式是()。

A)w==lB)w==0C)w!

=lD)w!

=0

(18)执行以下程序段后,w的值为()。

intw='

A'

x=14,y=15;

w=((x||y)&

&

(w<

'

a'

));

A)-1B)NULLC)lD)0

(19)若变量已正确定义为int型,要通过语句scanf("

%d,%d,%d"

&

a,&

b,&

c);

给a赋值

1、给b赋值2、给c赋值3,以下输入形式中错误的是(ò

代表一个空格符)()。

A)ò

ò

1,2,3<

回车>

B)1ò

3<

C)1,ò

2,ò

D)1,2,3<

(20)有以下程序段

inta,b,c;

a=10;

b=50;

c=30;

if(a>

b)a=b,b=c;

c=a;

printf("

a=%db=%dc=%d\n”,a,b,c);

程序的输出结果是()。

A)a=10b=50c=10B)a=10b=50c=30C)a=10b=30c=10D)a=50b=30c=50

(21)若有定义语句:

intm[]={5,4,3,2,1},i=4;

,则下面对m数组元素的引用中错误的是

()。

A)m[--i]B)m[2*2]C)m[m[0]]D)m[m[i]]

(22)下面的函数调用语句中func函数的实参个数是()。

func(f2(v1,v2),(v3,v4,v5),(v6,max(v7,v8)));

A)3B)4C)5D)8

(23)若有定义语句:

doublex[5]={1.0,2.0,3.0,4.0,5.0},*p=x;

则错误引用x数组元素的是

A)*pB)x[5]C)*(p+1)D)*x

(24)若有定义语句:

chars[10]="

1234567\0\0"

;

,则strlen(s)的值是()。

A)7B)8C)9D)10

(25)以下叙述中错误的是()。

A)用户定义的函数中可以没有return语句

B)用户定义的函数中可以有多个return语句,以便可以调用一次返回多个函数值

C)用户定义的函数中若没有return语句,则应当定义函数为void类型

二级C语言程序设计试卷第3页(共9页)

D)函数的return语句中可以没有表达式

(26)以下关于宏的叙述中正确的是()。

A)宏名必须用大写字母表示

B)宏定义必须位于源程序中所有语句之前

C)宏替换没有数据类型限制

D)宏调用比函数调用耗费时间

(27)有以下程序

#include<

stdio.h>

main()

{inti,j;

for(i=3;

i>

=l;

i--)

{for(j=1;

j<

=2;

j++)printf("

%d"

i+j);

\n"

);

}

程序的运行结果是()。

A)234B)432

345543

C)23D)45

3434

4523

(28)有以下程序

#include<

{intx=l,y=2,z=3;

if(x>

y)

if(y<

z)printf("

++z);

elseprintf("

++y);

%d\n"

x++);

A)331B)41C)2D)1

(29)有以下程序

#include<

{inti=5;

do

{if(i%3=1)

if(i%5==2)

{printf("

*%d"

i);

break;

i++;

}while(i!

=0);

二级C语言程序设计试卷第4页(共9页)

A)*7B)*3*5C)*5D)*2*6

(30)有以下程序

intfun(inta,intb)

{if(b==0)returna;

elsereturn(fun(--a,--b));

fun(4,2));

A)1B)2C)3D)4

(31)有以下程序

stdlib.h>

intfun(intn)

{int*p;

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

*p=n;

return*p;

{inta;

a=fun(10);

printf("

a+fun(10));

A)0B)10C)20D)出错

(32)有以下程序

voidfun(inta,intb)

{intt;

t=a;

a=b;

b=t;

{intc[10]={1,2,3,4,5,6,7,8,9,0),i;

for(i=0;

i<

10;

i+=2)fun(c[i],c[i+l]);

i++)printf("

%d,"

c[i]);

A)l,2,3,4,5,6,7,8,9,0,B)2,l,4,3,6,5,8,7,0,9,C)0,9,8,7,6,5,4,3,2,1,D)

0,1,2,3,4,5,6,7,8,9,

(33)有以下程序

structst

二级C语言程序设计试卷第5页(共9页)

{intx,y;

)data[2]={l,10,2,20};

{structst*p=data;

p->

y);

(++p)->

x);

A)10,1B)20,1C)10,2D)20,2

(34)有以下程序

voidfun(inta[],intn)

{inti,t;

for(i=0;

n/2;

i++){t=a[i];

a[i]=a[n-1-i];

a[n-1-i]=t;

{intk[10]={1,2,3,4,5,6,7,8,9,10},i;

fun(k,5);

for(i=2;

8;

k[i]);

A)345678B)876543C)1098765D)321678

(35)有以下程序

#defineN4

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

{inti;

N;

i++)b[i]=a[i][i];

{intx[][N]={{1,2,3),{4),{5,6,7,8),{9,10}},y[N],i;

fun(x,y);

y[i]);

A)l,2,3,4,B)1,0,7,0,C)1,4,5,9,D)3,4,8,10,

(36)有以下程序

intfun(int(*s)[4],intn,intk)

{intm,i;

m=s[0][k];

for(i=l;

n;

i++)if(s[i][k]>

m)m=s[i][k];

returnm;

二级C语言程序设计试卷第6页(共9页)

{inta[4][4]={{1,2,3,4),{11,12,13,14},{2l,22,23,24},{31,32,33,34}};

fun(a,4,0));

A)4B)34C)31D)32

(37)有以下程序

{structSTU{charname[9];

charsex;

doublescore[2];

};

structSTUa={"

Zhao"

'

m'

85.0,90.0),b={"

Qian"

f'

95.0,92.0);

b=a;

%s,%c,%2.0f,%2.0f\n"

b.name,b.sex,b.score[0],b.score[1]);

A)Qian,f,95,92B)Qian,m,85,90C)Zhao,f,95,92D)Zhao,m,85,90

(38)假定已建立以下链表结构,且指针p和q已指向如图所示的结点:

headabc

datanext

↑p↑q

则以下选项中可将q所指结点从链表中删除并释放该结点的语句组是()。

A)(*p).next=(*q).next;

free(p);

B)p=q->

next;

free(q);

C)p=q;

D)p->

next=q->

(39)有以下程序

{chara=4;

a=a<

<

1);

A)40B)16C)8D)4

(40)有以下程序

{FILE*pf;

char*s1="

China"

*s2="

Beijing"

pf=fopen("

abc.dat"

"

wb+"

fwrite(s2,7,l,pf);

rewind(pf);

fwrite(s1,5,1,pf);

fclose(pf);

以上程序执行后abc.dat文件的内容是()。

B)ChinaB)ChinangC)ChinaBeijingD)BeijingChina

二级C语言程序设计试卷第7页(共9页)

二、填空题(每空2分,共30分)

请将每一个空的正确答案写在答题卡【1】至【15】序号的横线上,答在试卷上不得分。

(1)对下列二叉树进行中序遍历的结果【1】。

A

BC

DEF

XYZ

(2)按照软件测试的一般步骤,集成测试应在【2】测试之后进行。

(3)软件工程三要素包括方法、工具和过程,其中,【3】支持软件开发的各个环节的

控制和管理。

(4)数据库设计包括概念设计、【4】和物理设计。

(5)在二维表中,元组的【5】不能再分成更小的数据项。

(6)设变量a和b已正确定义并赋初值。

请写出与a-=a+b等价的赋值表达式【6】。

(7)若整型变量a和b中的值分别为7和9,要求按以下格式输出a和b的值:

a=7

b=9

请完成输出语句:

printf("

【7】"

a,b);

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

{inti,j,sum;

i>

=1;

i--)

{sum=0;

for(j=1;

j<

=i;

j++)sum+=i*j;

sum);

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

{intj,a[]={1,3,5,7,9,11,13,15},*p=a+5;

for(j=3;

j;

j--)

{switch(j)

{case1:

case2:

*p++);

case3:

*(--p));

二级C语言程序设计试卷第8页(共9页)

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

#defineN5

intfun(int*s,inta,intn)

{intj;

*s=a;

j=n;

while(a!

=s[j])j--;

returnj;

{ints[N+1];

intk;

for(k=l;

k<

=N;

k++)s[k]=k+l;

fun(s,4,N));

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

intfun(intx)

{staticintt=0;

return(t+=x);

{ints,i;

i<

=5;

i++)s=fun(i);

s);

(12)以下程序按下面指定的数据给x数组的下三角置数,并按如下形式输出,请填空。

4

37

269

15810

{intx[4][4],n=0,i,j;

for(j=0;

4;

j++)

=j;

【12】){n++;

x[i][j]=【13】;

i++)

{for(j=0;

j++)printf("

%3d"

x[i][j]);

(13)以下程序的功能是:

通过函数func输入字符并统计输入字符的个数。

输入时用字符

@作为输入结束标志。

请填空。

long【14】;

二级C语言程序设计试卷第9页(共9页)

{longn;

n=func();

n=%ld\n"

n);

longfunc()

{longm;

for(m=0;

getchar()!

='

@'

【15】);

retumm;

2008年9月笔试卷参考答案

一、选择题

(1)B)

(2)D)(3)C)(4)A)(5)D)(6)B)(7)A)(8)B)

(9)C)(10)D)(11)C)(12)D)(13)A)(14)C)(15)D)(16)A)

(17)D)(18)C)(19)B)(20)A)(21)C)(22)A)(23)B)(24)A)

(25)B)(26)C)(27)D)(28)D)(29)A)(30)B)(31)C)(32)A)

(33)C)(34)D)(35)B)(36)C)(37)D)(38)D)(39)C)(40)B)

二、填空题

(1)

【1】DBXEAYFZC

(2)

【2】单元

(3)

【3】过程(4)

【4】逻辑设计

(5)

【5】分量(6)

【6】a=a-(a+b)或(a=-b)

(7)

【7】a=%d\nb=%d(8)

【8】1

(9)

【9】9911(10)

【10】3

(11)

【11】15(12)

【12】i--

(13)

【13】n(14)

【14】func()

(15)

【15】m++

1.2009年9月二级C语言笔试真题及答案

2.不含空格:

3.答案:

一、选择题(每题2分,共计70分)

1.

(1)下列数据结构中,属于非线性结构的是

A)循环队列B)带链队列C)二叉树D)带链栈

(2)下列数据结构中,能够按照“先进后出”原则存取数据的是

A)循环队列B)栈C)队列D)二叉树

(3)对于循环队列,下列叙述中正确的是

A)队头指针是固定不变的B)队头指针一定大于队尾指针

C)队头指针一定小于队尾指针D)队头指针可以大于队尾指针,也可以小于队尾指针

(4)算法的空间复杂度是指

4.A)算法在执行过程中所需要的计算机存储空间B)算法所处理的数据量

C)算法程序中的语句或指令条数D)算法在执行过程中所需要的临时工作单元数

(5)件设计中划分模块的一个准则是

A)低内聚低耦合B)高内聚低耦合C)低内聚高耦合D)高内聚高耦合

(6)下列选项中不属于结构化程序设计原则的是

A)可封装B)自顶向下C)模块化D)逐步求精

(7)软件详细设计产生的图如下:

5.该图是

A)N-S图B)PAD图C)程序流程图D)E-R图

(8)数据库管理系统是

A)操作系统的一部分B)在操作系统支持下的系统软件

C)一种编译系统D)一种操作系统

(9)在E-R图中,用来表示实体联系的图形是

A)椭圆形B)矩形C)菱形D)三角形

10.(10)有三个关系R,S,和T如下:

6.其中关系T由关系R和S通过某种操作得到,该操作为

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

7.11.(11)以下叙述中正确的是

A)程序设计的任务就是编写程序代码并上机调试B)程序设计的任务就是确定所用的数据结构

C)程序设计的任务就是确定所用算法D)以上三种说法都不完整

12.(12)以下选项中,能用作用户标识符的是

A)voidB)8_8C)_0_D)unsigned

8.13.(13)阅读以下程序

#include 

main()

{ int case;

 float printF;

  printf("

请输入2个数:

"

  scanf("

%d %f"

&

case,&

printF);

%d %f\n"

case,printf);

}

该程序在编译时产生错误,其出错原因是

A)定义语句出错,case是关键字,不能用作用户自定义标识符

B)定义语句出错,printF不能用作用户自定义标识符

C)定义语句无错,scanf不能作为输入函数使用

D)定义语句无措,printf不能输出case的值

14.(14)表达式:

(int)((double)9/2)-(9)%2的值是

A)0B)3C)4D)5

15.(15)若有定义语句:

 int x=10;

则表达式x-=x+x的值为

A)-20B)-10C)0D)10

9.16.(16)有以下程序

{ int a=1,b=0;

b=a+b);

a=2*b);

程序运行后的输出结果是

A)0,0B)1,0C)3,2D)1,2

17.(17)设有定义:

 int a=1,b=2,c=3;

以下语句中执行效果与其它三个不同的是

A)if(a>

b) c=a,a=b,b=c;

B)if(a>

b){c=a,a=b,b=c;

}C)if(a>

b) c=a;

a=b;

b=c;

D)if(a>

b){c=a;

10.18.(18)有以下程序

{ int c=0,k;

  for(k=1;

k<

3;

k++)

    switch(k)

    { default:

c+=

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

当前位置:首页 > 小学教育 > 英语

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

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