提高组测试卷

更新时间:2024-01-02 16:26:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

青少年信息学奥林匹克竞赛试题 ( 提高组C 语言二小时完成)

●● 全部答案均要写在答案卷子上,写在试卷纸上一律无效 ●●

一、单项选择题:(共15题,每题2分,共计30分。每题有且仅有一个正确答案) 1、一个C程序的执行是从( )。 A.本程序的main函数开始,到main函数结束

B.本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 C.本程序的main函数开始,到本程序文件的最后一个函数结束 D.本程序文件的第一个函数开始,到本程序main函数结束

2、为计算机科学与技术领域作出杰出贡献的科学家设立的奖项是( )。 A. 沃尔夫奖 B. 诺贝尔奖 C 南丁格尔奖 D. 图灵奖 3、程序设计语言的发展经历了机器语言、汇编语言、到( )的发展过程 A. 高级语言 B. 低级语言 C.程序语言 D.伪代码 4、下面表达式中z的值是( )

int x=1,y=2,z; z=(x+y++)*3

A. 6 B. 8 C. 9 D. 12

5、在C语言中,char 型数据在内存中是以( )形式存储的。 A.原码 B.补码 C.ASCII码 D.反码

6、提出“存储程序“的计算机工作 原理的是 ( )

A.克劳德.香农 B. 冯.诺依曼戈登 C 、查尔斯.巴比奇 D..摩尔 7、若有以下类型说明语句( ) char w; int x; float y; double z;

则表达式 w*x+z-y 的结果是()类型。

A.float B.char C.int D.double 8、算式(2047)10 –(3FF)16 +(2000)8的结果是( )。

A、(2048)10 B、(2049)10 C、(3746)8 D、(1AF7)16 9、下面不正确的字符串常量是( )。

A、 'abc' B、 \ C、\ D、 \ 10、以下选项中,与k=n++完全等价的表达式是( )。

A、 k=n,n=n+1 B、 n=n+1,k=n C、k=++n D、 k+=n+1 11、ASCII 码的含义是( )。

A. 二—十进制转换码 B. 美国信息交换标准代码 C. 数字的二进制编码 D. 计算机可处理字符的唯一编码 12 、能将数学表达式a<=c<=b表示为正确的c表达式的是:( )

1

A. a<=c<=b B. c<=a && c>=b C. c>=a && c<=b D. c>=a || c<=b

13、( )发明了六十进制系统,我们现在关于时、分、秒的记法和关于角度的记法就是

从他们那里学来的。

A.希腊人 B. 巴比伦人 C. 阿拉伯人 D. 古埃及人

14、在C 语言中,判断a 等于0 或b 等于0 或c 等于0 的正确的条件表达式是( )

A. !((a!=0)||(b!=0)||(c!=0)) B. !((a!=0)&&(b!=0)&&(c!=0)) C. !(a==0&&b==0)||(c!=0) D. (a=0)&&(b=0)&&(c=0) 15、 算法是程序设计的“灵魂”, ( )指出:算法+数据结构=程序。

A.摩尔.丁 B. 诺贝尔

C. 乔布斯

D. 尼克劳斯.沃思

二、不定项选择题.( 共4题,每题3分,共计12分,多选或少选均不得分) 16. 设A=B=true,C=D=false,以下逻辑运算表达式值为真的有( )。 A. (﹁A∧B)∨(C∧D∨A) B. ﹁ ( ( (A∧B)∨C)∧D) C. A∧(B∨C∨D)∨D D. (A∧(D∨C)) ∧B

17. 设栈S的初始状态为空,元素a, b, c, d, e 依次入栈,以下出栈序列可能出现的有( )。 A. a, b, c, e, d B. b, c, a, e, d C. a, e, c, b, d D. d, c, e, b, a

18. 二叉树T,已知其先根遍历是1 2 4 3 5 7 6(数字为结点的编号,以下同),后根遍历是4 2 7 5 6 3 1,则该二叉树的可能的中根遍历是( )。

A. 4 2 1 7 5 3 6 B. 2 4 1 7 5 3 6 C. 4 2 1 7 5 6 3 D. 2 4 1 5 7 3 6 19. 在参加NOI系列竞赛过程中,下面哪些行为是被严格禁止的:( ) A) 携带书写工具,手表和不具有通讯功能的电子词典进入赛场。

B) 在联机测试中通过手工计算出可能的答案并在程序里直接输出答案来获取分数。 C) 通过互联网搜索取得解题思路。

D) 在提交的程序中启动多个进程以提高程序的执行效率。 三、问题求解(共2题,每题4分,共计8分)

1 .某兴趣小组有n名同学,三人为一小组最后余2人,五人为一小组最后余3人,7人为一小组最后余2人,问这个兴趣小组共有多少学生n=__________________.

2. 鸡兔同笼问题:小明家的笼子有若干只鸡和兔,它们共有50个头和140只脚,请你利用所学知识推算一下,鸡、兔各有多少只___________. 四、写出下列程序的运行结果(每题8分,共32分)。 1.main() { int m,n,s;

scanf(\ if (m>n) { - -m; s=m%n; }

2

else

{++m; s=m*n; } printf(\ }

输出:_______________ 2. main()

{ int i,s=1,k=0;

for(i=1;i<=10;i=i+3) {s=s+i;

输入:-3,3

k++;} printf(\ }

输出:___________________ 3. int f(int a, int b)

{ int c;

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

else if (a= =b) c=a*b; else c=a%b; return( c ); } main()

{ int i=2,j=3,p;

p=f(i,j); printf(\

}

输出:_______________

4. #include

int main()

{int i,p[5],q[5],x,y=20; for(i=0;i<=4;i++) scanf(\

q[0]=(p[0]+p[1])+(p[2]+p[3]+p[4])/7; q[1]=p[0]+p[1]/((p[2]+p[3])/p[4]); q[2]=p[0]*p[1]/p[2]; q[3]=q[0]*q[1]; q[4]=q[1]+q[2]+q[3];

3

x=(q[0]+q[4]+2)-p[(q[3]+3)%4]; if (x>10)

y+= (q[1]*100-q[3])/(p[p[4]%3]*5); else

y+=20+(q[2]*100-q[3])/(p[p[4]%3]*5); printf(\return 0; }

/*注:本题中,给定的输入数据可以避免分母为0 或数组元素下标越界。*/ 输入:1 2 1 21

输出:_______________

五、阅读程序,在空白处填入适当的表达式或语句,使程序完整并符合题目要求。(每空3分共18分)

1、求出10至1000之内能同时被2、3、7整除的数,并输出。 main()

{ int i;

for (i=10; ①____________; i++)

if ( ____②_______&& i%3= =0 ___③_______ i%7= =0) printf(″%d″,i); }

2、对于一个三位数来说,如果其各位数字立方和等于该数,则被称为“水仙花数”。例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。请完成以下程序,使其完整。

#include \ #include \ main() {

int i,j,k,n;

printf(\

for(n=100;n<1000; ____ ①________ ) {

i= ___②_________ ; /*分解出百位*/ j=n/10 ; /*分解出十位*/ k= ___③_________; /*分解出个位*/ if(i*100+j*10+k==i*i*i+j*j*j+k*k*k)

printf(\

} getch(); }

4

本文来源:https://www.bwwdw.com/article/ia5x.html

Top