2010年下半年浙江省高等学校计算机等级考试二级C试卷及答案

合集下载

2008--2010浙江省二级C语言考试真题 史杨杨

2008--2010浙江省二级C语言考试真题  史杨杨

2008年春浙江省高校计算机等级考试试卷(二级C)试题1(每小题3分,共12分)【程序说明】输入一个整数n(n>=2),输入菲波那契序列的前n项,每行输出6个数,菲波那序列:1,1,2,3,5,8,13,……,数列的前两个数都是1,从第三项开始,每个数是前两个数之和。

运行示例:Enter n:101 123 5 813 21 34 55#include <stdio.h>main(){int count,i,n,x1,x2,x;printf("Enter n:");scanf("%d",&n);x1=x2=1;printf("%6d%6d",x1,x2);(1);for(i=1;i<=n-2;i++){(2);printf("%6d",x);count++;if((3))printf("\n");x1=x2;(4);}}【供选择的答案】(1)A、count=2 B、count=0C、count=1D、count=-1 答案:A(2) A、x=x1-x2 B、x=x1+x2C、x=x1D、x=2 答案:B(3) A、count/6==0 B、count%6!=0C、count%6==0D、count/6!=0 答案:C(4) A、x=x1+x2 B、x2=x1C、x=x2D、x2=x 答案:D试题2(每小题3分,共12分)【程序说明】输入2个正数m和n(1<=m<n<=500),统计交输出m和n之间素数的个数以及这些素数的和,要求定义和调用函数prime(m)判断m是否为素数,当m为素数返回1,否则返回0。

素数就是只能被1和自身整除的正整,1不是素,2是素数。

运行示例:Enter m,n:1 10count=4,sum=17【程序】#include <stdio.h>#include <math.h>int prime(int m){int i,n;if(m==1)return (5);n=sqrt(m);for(i=2;i<=n;i++)if(m%i==0)return (6);return (7);}main(){int count=0,i,m,n,sum=0;printf("Enter m,n:");scanf("%d%d",&m,&n);for(i=m;i<=n;i++)if((8)){sum+=i;count++;}printf("count=%d,sum=%d\n",count,sum);}【供选择的答案】(5)A、1 B、mC、m==1D、0 答案:D(6) A、m B、1C、0D、n 答案:C(7) A、m B、1C、0D、i==n 答案:B(8) A、prime(i)!=0 B、prime(i)==0C、1=prime(i)D、!prime(i) 答案:A试题3(每小题3分,共12分)【程序说明】输入一个2*3的二维数组,找出最大值以及它的行下标和列下标,并输出该结果。

浙江省高等学校C语言二级笔试部分真题2007

浙江省高等学校C语言二级笔试部分真题2007

浙江省高等学校计算机等级考试试卷(二级C)2010-2007笔试部分真题2010年春浙江省高等学校计算机等级考试试卷(二级C)一、程序阅读与填空(24小题,每小题3分,共72分)1. 阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。

【程序说明】输入一个整数,求它的各位数字之和及位数。

例如,17的各位数字之和是8,位数是2。

运行示例:Enter an integer:-153sum = 8, count = 3【程序】#include <stdio.h>main(){int count = 0, in, sum = 0;printf("Enter an integer:");scanf("%d", &in);if( D ) in = -in;do{sum = sum + (2) C ;(3)C ;count++;}while( (4)B );printf("sum = %d, count = %d\n", sum, count);}【供选择的答案】(1) A、in == 0 B、in > 0C、in != 0D、in < 0(2) A、in /10 B、in mod 10C、in % 10D、in(3) A、in = in % 10 B、in /10C、in = in /10D、in % 10(4) A、in % 10 != 0 B、in != 0C、!inD、in / 10 != 02.阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。

【程序说明】输出50到70之间的所有素数。

要求定义和调用函数isprime(m)判断m是否为素数,若m为素数则返回1,否则返回0。

素数就是只能被1和自身整除的正整数,1不是素数,2是素数。

运行示例:53 59 61 67【程序】#include <stdio.h>#include <math.h>main(){ int i; int isprime(int m);for(i = 50; i <= 70; i++)if( (5) B )printf("%d ", i);}int isprime(int m){int i, k;(6)Bk = (int)sqrt((double)m);for(i = 2; i <= k; i++)if(m % i == 0) (7) A ;(8)A ;}【供选择的答案】(5) A、isprime (m) != 0 B、isprime (i) != 0C、isprime (m) == 0D、isprime (i) == 0(6) A、if(m != 1) return 1; B、if(m == 1) return 0;C、;D、if(m == 1) return 1;(7) A、return 0 B、return 1C、return i <= kD、return(8) A、return 1 B、return 0C、returnD、return i <= k3. 阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。

2010浙江省计算机等级考试二级试题及答案

2010浙江省计算机等级考试二级试题及答案
1、面向对象的设计方法与传统的的面向过程的方法有本质不同,它的基本原理是(C)
A. 模拟现实世界中不同事物之间的联系 B. 强调模拟现实世界中的算法而不强调概念 C. 使用现实世界的概念抽象地思考问题从而自然地解决问题 D. 鼓励开发者在软件开发的绝大部分中都用实际领域的概念去思考
2、数据库概念设计的过程中,视图设计一般有三种设计次序,以下各项中不对的是(D)
27、在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是(B)
A. 可行性分析 B. 需求分析 C. 详细设计 D. 程序编码
28、在关系数据库中,用来表示实体之间联系的是(D)
A. 树结构 B. 网结构 C. 线性表 D. 二维表
29、程序流程图(PFD)中的箭头代表的是(B)
A. 树结构 B. 网结构 C. 线性表 D. 二维表
17、在结构化方法中,软件功能分解属于下列软件开发中的阶段是(C) 注:总体设计也就是概要设计
A. 详细设计 B. 需求分析 C. 总体设计 D. 编程调试
18、面向对象的设计方法与传统的的面向过程的方法有本质不同,它的基本原理是(C)
A. 数据流 B. 控制流 C. 调用关系 D. 组成关系
30、按条件f对关系R进行选择,其关系代数表达式为(C)
A. R|X|R B. R|X|Rf C. бf(R) D. ∏f(R)
31、设一棵完全二叉树共有699个结点,则在该二叉树中的叶子结点数为(B) 注:利用公式n=n0+n1+n2、n0=n2+1和完全二叉数的特点可求出
14、算法一般都可以用哪几种控制结构组合而成(D)
A. 循环、分支、递归 B. 顺序、循环、嵌套

下半年VB试卷及参考答案

下半年VB试卷及参考答案

C、m - 1
C、Break C、j <= n
3. 阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。
【程序说明】 将 1~1000 之间的素数(除了 1 以外只能被 1 和其自身整除的数)顺序输出到
新建的文件 e:\prime.txt 中。
【程序】
Private Sub Command1_Click()
ReDim a(m) As Single, b(n) As Single
For i = 1 To m
a(i) = List1.List(i - 1)
Next i
For i = 1 To n
b(i) = List2.List(i - 1)
Next i
For i =
(4) A、k = k -1
B、Exit Sub C、Exit
2. 阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。 【程序说明】单击 Command1 后将同时出现在列表框控件 List1、List2 中的数添加到列表框 控件 List3 中(如下图所示)。
C、n = 0
B、Label1.Caption & n Mod 2
(3)
If Chr(K) < "0" Or Chr(K) > "9" Then (4)
End Sub
【供选择的答案】
(1) A、n > 1
(2) A、n Mod 2 & Label1.Caption
C、n Mod 2 + Label1.Caption
B、n <> 0
(3) A、n = n Mod 2 B、n = n - 1 C、n = n / 2 D、n = n \ 2

2010浙江省计算机等级考试试题 二级C试题试题及答案

2010浙江省计算机等级考试试题 二级C试题试题及答案
A、运算器和控制器 B、累加器和算术逻辑运算部件(ALU)
C、累加器和控制器 D、通用寄存器和控制器
15、静态RAM的特点是( A )
A、在不断电的条件下,其中的信息保持不变,因而不必定期刷新
A、在不断电的条件下,其中的信息保持不变,因而不必定期刷新
B、在不断电的条件下,其中的信息不能长时间保持,因而必须定期刷新才不致丢失信息
C、其中的信息只能读不能写
ቤተ መጻሕፍቲ ባይዱD、其中的信息断电后也不会丢失
26、针式打印机术语中,24针是指( D )
A、24×24点阵 B、信号线插头有24针
13、计算机的内存中有一项占据4个字节的数据,内容依次为61H、41H、31H、51H,这项数据可能是( C )
A、汉字,西文混合字符串 B、汉字字符串
C、西文字符串 D、控制字符串
14、微型计算机中,合称为中央处理单元(CPU)的是指( A )
A、不要将软盘随便借给他人使用,以免感染病毒
B、对执行重要工作的计算机要专机专用,专人专用
C、经常对系统的重要文件进行备份,以备在系统遭受病毒侵害、造成破坏时能从备份中恢复
D、只要安装微型计算机的病毒防范卡,或病毒防火墙,就可对所有的病毒进行防范
23、ASCII码是一种( B )位二进制编码
B、在不断电的条件下,其中的信息不能长时间保持,因而必须定期刷新才不致丢失信息
C、其中的信息只能读不能写
D、其中的信息断电后也不会丢失
16、软件系统主要由( B )
A、操作系统和数据库管理系统组成 B、系统软件和应用软件组成
C、应用软件和操作系统组成 D、系统软件和操作系统组成
C、20行,每行80个字符 D、20行,每行60个字符

2010浙江省全国计算机等级考试二级笔试试卷VB考资料

2010浙江省全国计算机等级考试二级笔试试卷VB考资料

1、算法的空间复杂度是指(D)A. 算法程序的长度B. 算法程序中的指令条数C. 算法程序所占的存储空间D. 算法执行过程中所需要的存储空间2、在结构化方法中,软件功能分解属于下列软件开发中的阶段是(C) 注:总体设计也就是概要设计A. 详细设计B. 需求分析C. 总体设计D. 编程调试3、软件调试的目的是(B) 注:与软件测试要对比着复习A.发现错误B.改正错误C.改善软件的性能D.挖掘软件的潜能4、关系数据库管理系统能实现的专门关系运算包括(B)A. 排序、索引、统计B. 选择、投影、连接C. 关联、更新、排序D. 显示、打印、制表5、面向对象的设计方法与传统的的面向过程的方法有本质不同,它的基本原理是(C)A. 模拟现实世界中不同事物之间的联系B. 强调模拟现实世界中的算法而不强调概念C. 使用现实世界的概念抽象地思考问题从而自然地解决问题D. 鼓励开发者在软件开发的绝大部分中都用实际领域的概念去思考6、下面对对象概念描述错误的是(A)A. 任何对象都必须有继承性B. 对象是属性和方法的封装体C. 对象间的通讯靠消息传递D. 操作是对象的动态性属性7、在深度为5的满二叉树中,叶子结点的个数为(C)A. 32B. 31C. 16D. 158、检查软件产品是否符合需求定义的过程称为(A)A. 确认测试B. 集成测试C. 验证测试D. 验收测试9、软件需求分析阶段的工作,可以分为四个方面:需求获取、需求分析、编写需求规格说明书以及(B)A. 阶段性报告B. 需求评审C. 总结D. 都不正确10、下面概念中,不属于面向对象方法的是 (D)A. 对象B. 继承C. 类D. 过程调用11、检查软件产品是否符合需求定义的过程称为(A)A. 确认测试B. 集成测试C. 验证测试D. 验收测试12、在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。

其中数据独立性最高的阶段是(A)A. 数据库系统B. 文件系统C. 人工管理D. 数据项管理13、信息隐蔽的概念与下述哪一种概念直接相关(B)A.软件结构定义B. 模块独立性C. 模块类型划分D. 模拟耦合度14、关系表中的每一横行称为一个(A)A. 元组B. 字段C. 属性D. 码15、下列工具中属于需求分析常用工具的是(D)A. PADB. PFDC. N-SD. DFD16、下列叙述中正确的是(A)A. 线性表是线性结构B. 栈与队列是非线性结构C. 线性链表是非线性结构D. 二叉树是线性结构17、算法的时间复杂度是指(C)A. 执行算法程序所需要的时间B. 算法程序的长度C. 算法执行过程中所需要的基本运算次数D. 算法程序中的指令条数18、在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是(B)A. 可行性分析B. 需求分析C. 详细设计D. 程序编码19、结构化程序设计主要强调的是(B)A.程序的规模B.程序的易读性C.程序的执行效率D.程序的可移植性20、下列关于栈的叙述中正确的是(D)A. 在栈中只能插入数据B. 在栈中只能删除数据C. 栈是先进先出的线性表D. 栈是先进后出的线性表。

全国计算机等级考试二级C历年真题及答案

全国计算机等级考试二级C历年真题及答案

全国计算机等级考试二级C历年真题及答案一、选择题((1)~(35)每小题2分,共70分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。

(1)下面叙述正确的是A)算法的执行效率与数据的存储结构无关B)算法的空间复杂度是指算法程序中指令(或语句)的条数C)算法的有穷性是指算法必须能在执行有限个步骤之后终止D)以上三种描述都不对(2)以下数据结构中不属于线性数据结构的是A)队列B)线性表C)二叉树D)栈(3)在一棵二叉树上第5层的结点数最多是A)8B)16C)32D)15(4)下面描述中,符合结构化程序设计风格的是A)使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑B)模块只有一个入口,可以有多个出口C)注重提高程序的执行效率D)不使用goto语句(5)下面概念中,不属于面向对象方法的是A)对象B)继承C)类D)过程调用(6)在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是A)可行性分析B)需求分析C)详细设计D)程序编码(7)在软件开发中,下面任务不属于设计阶段的是A)数据结构设计B)给出系统模块结构C)定义模块算法D)定义需求并建立系统模型(8)数据库系统的核心是A)数据模型C)软件工具B)数据库管理系统D)数据库(9)下列叙述中正确的是A)数据库系统是一个独立的系统,不需要操作系统的支持B)数据库设计是指设计数据库管理系统C)数据库技术的根本目标是要解决数据共享的问题D)数据库系统中,数据的物理结构必须与逻辑结构一致(10)下列模式中,能够给出数据库物理存储结构与物理存取方法的是A)内模式B)外模式C)概念模式D)逻辑模式(11)关于面向对象的程序设计方法,下列说法正确的是A)―封装性‖指的是将不同类型的相关数据组合在一起,作为一个整体进行处理B)―多态性‖指的是对象的状态会根据运行时要求自动变化C)基类的私有成员在派生类的对象中不可访问,也不占内存空间D)在面向对象的程序设计中,结构化程序设计方法仍有着重要作用(12)判断字符型变量ch是否为大写英文字母,应使用表达式A)ch>='A'&ch<='Z'B)ch<='A'||ch>='Z'C)'A'<=ch<='Z'D)ch>='A'&& ch<='Z'(13)已知下列语句中的某和y都是int型变量,其中错误的语句A)某=y++;B)某=++y;C)(某+y)++;D)++某=y;(14)执行语句序列intn;cin>>n;witch(n){cae1:cae2:cout<<'1';cae3:cae4:cout<<'2';break;default:cout<<'3';}时,若键盘输入1,则屏幕显示A)1B)2C)3D)12(15)下列程序的输出结果是#includeuingnamepacetd;intmain(){chara[]=\char某ptr=a;while(某ptr){if(某ptr>='a'&&某ptr<='z')cout<<char(某ptr+'A'-'a');elecout<<某ptr;ptr++;}return0;}A)HELLO,WORLDB)Hello,WorldC)hELLO,wORLDD)hello,world(16)已知:intm=10;在下列定义引用的语句中,正确的是A)int&某=m;B)inty=&m;C)int&z;D)int&t=&m;(17)下列函数原型声明中错误的是A)voidFun(int某=0,inty=0);B)voidFun(int某,inty);C)voidFun(int某,inty=0);D)voidFun(int某=0,inty);(18)已知程序中已经定义了函数tet,其原型是inttet(int,int,int);,则下列重载形式中正确的是A)chartet(int,int,int);B)doubletet(int,int,double);C)inttet( int,int,int=0);D)floattet(int,int,float=3.5F);(19)有以下程序#includeinti=0;voidfun(){{taticinti=1;td::cout<td::cout<2intmain(){fun();fun();return0;}程序执行后的输出结果是A)1,2,1,2,B)1,2,2,3,C)2,0,3,0,D)1,0,2,0,(20)已知函数f的原型是:voidf(int某a,long&b);变量v1、v2的定义是:intv1;longv2;,正确的调用语句是A)f(v1,&v2);B)f(v1,v2);C)f(&v1,v2);D)f(&v1,&v2);(21)有以下类定义claMyCla{public:MyCla(){cout<<1;}};则执行语句MyClaa,b[2],某p[2];后,程序的输出结果是A)11B)111C)1111D)11111(22)关于友元,下列说法错误的是A)如果类A是类B的友元,那么类B也是类A的友元B)如果函数fun()被说明为类A的友元,那么在fun()中可以访问类A的私有成员C)友元关系不能被继承D)如果类A是类B的友元,那么类A的所有成员函数都是类B的友元(23)关于动态存储分配,下列说法正确的是A)new和delete是C++语言中专门用于动态内存分配和释放的函数B)动态分配的内存空间也可以被初始化C)当系统内存不够时,会自动回收不再使用的内存单元,因此程序中不必用delete释放内存空间D)当动态分配内存失败时,系统会立刻崩溃,因此一定要慎用new(24)有以下程序#includeuingnamepacetd;claMyCla{public:MyCla(intn){number=n;}//拷贝构造函数MyCla(MyCla&other){number=other.number;}~MyCla(){}private: intnumber;};MyClafun(MyClap){3MyClatemp(p);returntemp;}intmain(){MyClaobj1(10),obj2(0);MyClaobj3(obj1);obj2=fun(obj3);return0 ;}程序执行时,MyCla类的拷贝构造函数被调用的次数是A)5B)4C)3D)2(25)在公有派生的情况下,派生类中定义的成员函数只能访问原基类的A)公有成员和私有成员B)私有成员和保护成员C)公有成员和保护成员D)私有成员、保护成员和公有成员(26)在C++中用来实现运行时多态性的是A)重载函数B)析构函数C)构造函数D)虚函数(27)一个类可以同时继承多个类,称为多继承。

2010浙江省全国计算机等级考试二级VB笔试试卷及参考答案(必备资料)

2010浙江省全国计算机等级考试二级VB笔试试卷及参考答案(必备资料)

2010浙江省全国计算机等级考试二级VB笔试试卷及参考答案(必备资料)1、算法的时间复杂度是指(C)A. 执行算法程序所需要的时间B. 算法程序的长度C. 算法执行过程中所需要的基本运算次数D. 算法程序中的指令条数2、算法的时间复杂度是指(C)A. 执行算法程序所需要的时间B. 算法程序的长度C. 算法执行过程中所需要的基本运算次数D. 算法程序中的指令条数3、在软件开发中,下面任务不属于设计阶段的是(D)A. 数据结构设计B. 给出系统模块结构C. 定义模块算法D. 定义需求并建立系统模型4、在结构化方法中,软件功能分解属于下列软件开发中的阶段是(C) 注:总体设计也就是概要设计A. 详细设计B. 需求分析C. 总体设计D. 编程调试5、按条件f对关系R进行选择,其关系代数表达式为(C)A. R|X|RB. R|X|RfC. бf(R)D. ∏f(R)6、下列模式中,能够给出数据库物理存储结构与物理存取方法的是(A)A. 内模式B. 外模式C. 概念模式D. 逻辑模式7、检查软件产品是否符合需求定义的过程称为(A)A. 确认测试B. 集成测试C. 验证测试D. 验收测试8、在关系数据库中,用来表示实体之间联系的是(D)A. 树结构B. 网结构C. 线性表D. 二维表9、在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是(D)A. 概要设计B. 详细设计C. 可行性分析D. 需求分析10、用树形结构来表示实体之间联系的模型称为(B)A. 关系模型B. 层次模型C. 网状模型D. 数据模型11、在面向对象方法中,一个对象请求另一对象为其服务的方式是通过发送(D)A. 调用语句B. 命令C. 口令D. 消息12、数据库系统的核心是(B)A. 数据模型B. 数据库管理系统C. 软件工具D. 数据库13、信息隐蔽的概念与下述哪一种概念直接相关(B)A.软件结构定义B. 模块独立性C. 模块类型划分D. 模拟耦合度14、信息隐蔽的概念与下述哪一种概念直接相关(B)A.软件结构定义B. 模块独立性C. 模块类型划分D. 模拟耦合度15、下面对对象概念描述错误的是(A)A. 任何对象都必须有继承性B. 对象是属性和方法的封装体C. 对象间的通讯靠消息传递D. 操作是对象的动态性属性16、数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2010下半年浙江省高等学校计算机等级考试二级C程序设计试卷一、程序阅读与填空(24小题,每小题3分,共72分)1.阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。

【程序说明】输入5个整数,将它们从小到大排序后输出。

运行示例:Enter 5 integers:9 -9 3 6 0After sorted: -9 0 3 6 9【程序】#include <stdio.h>main(){int i,j,n,t,a[10];printf("Enter 5 integers:");for(i=0;i<5;i++)scanf("%d", (1));for(i=1; (2);i++)for(j=0; (3);j++)if( (4)){t=a[j];a[j]=a[j+1];a[j+1]=t;}printf("After sorted:");for(i=0;i<5;i++)printf("%3d",a[i]);}【供选择的答案】(1)A.&a[i] B.a[i] C.*a[i] D.a[n] 答案:A(2)A.i<5 B.i<4 C.i>=0 D.i>4 答案:A(3)A.j<5-i-1 B.j<5-i C.j<5 D.j<=5 答案:B,C也可以(4)A.a[j]<a[j+1] B.a[j]>a[j-1] C.a[j]>a[j+1] D.a[j-1]>a[j+1] 答案:C2.阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。

【程序说明】输出80-120之间的满足给定条件的所有整数,条件为构成该整数的每位数字都相同。

要求定义和调用函数is(n)判断整数n的每位数字是否都相同,若相同则返回1,否则返回0。

运行示例:88 99 111【程序】#include <stdio.h>main(){int i;int is(int n);for(i=80;i<=120;i++)if( (5))printf("%d ",i);printf("\n");}int is(int n){int old,digit;old=n%10;do{digit=n%10;if( (6)) return 0;(7)n=n/10;}while(n!=0);(8)}【供选择的答案】(5)A.is(n)==0 B.is(i)==0 C.is(n)!=0 D.is(i)!=0 答案:D(6)A.digit!=n%10 B.digit==old C.old==n%10 D.digit!=old 答案:D(7)A.digit=old; B.old=digit/10; C.digit=old; D.; 答案:C(8)A.return; B.return 1; C.return 0; D.return 1; 答案:D3.阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。

【程序说明】输入一个以回车结束的字符串(少于80个字符),将其逆序输出。

要求定义和调用函数revers(s),该函数将字符串s逆序存放。

运行示例:Enter a string:1+2=3After revered:3=2+1【程序】#include <stdio.h>void revers(char *str){int i,j,n=0;char t;while(str[n]!='\0')n++;for(i=0, (9);i<j; (10)){t=str[i];str[i]=str[j];str[j]=t;}}main(){int i=0;char s[80];printf("Enter a string:");while( (11))i++;s[i]='\0';(12)printf("After revered:");puts(s);}【供选择的答案】(9)A.j=n-1 B.j=n C.j=n-2 D.j=n+1 答案:A(10)A.i++,j-- B.i++,j++ C.i--,j++ D.i--,j-- 答案:A(11)A.s[i]=getchar()B.(s[i]=getchar()!=’\n’C.s[i]!=’\0’D.(s[i]=getchar()!=’\n’) 答案:D(12)A.revers(*s)B.revers(s)C.revers(&s) D.revers(str) 答案:B4.阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确答案。

【程序】#include <stdio.h>#define s(x) 3<(x)<5int a,n;void f1(int n){for(;n>=0;n--){if(n%2!=0)continue;printf("%d ",n);}printf("\n");}double f2(double x,int n){if(n==1) return 1;else return x*f2(x,n-1);}main(){int a=9;printf("%d %d\n",a,s(a));f1(4);printf("%.1f\n",f2(2.0,3));printf("%d %d\n",n,s(n));}【供选择的答案】(13)程序运行时,第1行输出(13)。

A.0 1 B.9 1 C.0 0 D.9 0 答案:B (14)程序运行时,第2行输出(14)。

A.3 1 B.4 2 0 C.4 3 2 1 D.0 答案:B (15)程序运行时,第3行输出(15)。

A.8.0 B.2.0 C.4.0 D.3.0 答案:C(16)程序运行时,第4行输出(16)。

A.0 1 B.3 1 C.0 0 D.3 0 答案:A5.阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确答案。

【程序】程序1#include <stdio.h>main(){int i,j;static a[4][4];for(i=0;i<4;i++)for(j=0;j<4;j++){if(j==0||j==i) a[i][j]=1;else a[i][j]=a[i-1][j]+a[i-1][j-1];}for(i=2;i<4;i++){for(j=0;j<=i;j++)printf("%d ",a[i][j]);printf("\n");}}程序2#include <stdio.h>main(){char str[80];int i;gets(str);for(i=0;str[i]!='\0';i++)if(str[i]=='z')str[i]='a';else str[i]+=1;puts(str);}【供选择的答案】(17)程序1运行时,第1行输出(17)。

A.1 B.1 1 C.1 2 1 D.1 3 3 1 答案:C (18)程序1运行时,第2行输出(18)。

A.1 B.1 1 C.1 2 1 D.1 3 3 1 答案:D (19)程序2运行时,输入123,输出(19)。

A.123 B.012 C.231 D.234 答案:D (20)程序2运行时,输入sz,输出(20)。

A.sz B.ty C.ta D.tz 答案:B6.阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确答案。

【程序】#include <stdio.h>main(){int i,j;char ch,*p1,*p2,*s[4]={"tree","flower","grass","garden"};for(i=0;i<4;i++){p2=s[i];p1=p2+i;while(*p1!='\0'){*p2=*p1;p1++;p2++;}*p2='\0';}for(i=0;i<4;i++)printf("%s\n", s[i]);}(21)程序运行时,第1行输出(21)。

A.ree B.ee C.tree D.e(22)程序运行时,第1行输出(22)。

A.flower B.ower C.wer D.lower(23)程序运行时,第1行输出(23)。

A.grass B.ss C.rass D.ass(24)程序运行时,第1行输出(24)。

A.en B.arden C.den D.garden二、程序编写(每小题14分,共28分)1.输入100个整数,将它们存入数组a,再输入一个整数x,统计并输出x在数组中出现的次数。

参考程序:#include <stdio.h>main(){int i,a[100],x,cnt=0;;for(i=0;i<100;i++)scanf("%d",&a[i]);scanf("%d",&x);for(i=0;i<100;i++)if(x==a[i])cnt++;printf("%d\n",cnt);}2.按下面要求编写程序:(1)定义函数fact(n)计算n!,函数返回值double 。

double fact(int n){int i;double t=1;for(i=1;i<=n;i++)t=t*i;return t;}(2)定义函数main(),输入正整数n ,计算并输出下列算式的值。

要求调用函数fact(n)计算n!。

!1!32!21n n n n S +⋯⋯+-+-+= 参考程序:#include <stdio.h>main(){int n,i;double sum=0;while(scanf("%d",&n),n<=0);for(i=1;i<=n;i++)sum+=(n+1-i)/fact(i);printf("\n%f\n",sum);}一、程序阅读与填空(24小题,每小题3分,共72分)1. A A B C2. D D (A、B、C均可)B3. A A B B4. B B A A5. C D D C6. C D D C二、程序编写(每题14分,共28分)1. #include <stdio.h>void main(){ int a[100], x, i, count=0 ;printf("Input 100 integers:\n");for ( i=0; i<100; i++)scanf("%d", a+i);printf("Input integer x:\n");scanf("%d", &x);for ( i=0; i<100; i++)if ( a[i] == x ) count++;printf( "count=%d\n", count);}2. double fact (int n){ int i ;double s=1 ;for ( i=1; i<=n; i++)s *= i ;return s;}#include <stdio.h>void main(){ double s=0;int n, i ;do scanf("%d", &n);while (n<=0);for ( i=1; i<=n; i++)s += (n-i+1)/fact(i);printf("s=%f\n", s);}。

相关文档
最新文档