ImageVerifierCode 换一换
格式:DOCX , 页数:14 ,大小:20.34KB ,
资源ID:5991673      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/5991673.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(四川省普通高等学校计算机应用知识和能力第二十九次等级考试.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

四川省普通高等学校计算机应用知识和能力第二十九次等级考试.docx

1、四川省普通高等学校计算机应用知识和能力第二十九次等级考试四川省普通高等学校计算机应用知识和能力第二十九次等级考试二级(C与C+语言) 笔试试卷 时间:2008年10月18日上午9:0011:00第一部分软件技术基础(共15分)一、是非判断题(每小题1分,共10分)( 判断下列各题是否正确,如正确,在客观答题纸上对应编号选A,否则选B )1. 在设备管理中通道是处理输入、输出的软件。 ( 1 )2. 从逻辑上可以把数据结构分为线性结构和非线性结构。 ( 2 )3. 若无进程处于运行状态,则就绪队列为空。 ( 3 )4. 在单处理器系统中,程序的并发执行,实质上是程序的交替执行。 ( 4 )5.

2、分页存储管理中,页面不能映射到不连续的内存块中。 ( 5 )6. 瀑布模型的突出缺点是不适应用户需求的变化。 ( 6 )7. 栈和队列的共同特点是允许在端点之外处插入和删除元素。 ( 7 )8. 为了便于对照检查,测试用例应由输入数据和预期的输出结果两部分组成。 ( 8 )9. 在软件生存期内,能确定软件系统必须做什么和必须具备的功能阶段是编码。 ( 9 )10.在结构化分析中,用于描述加工逻辑的主要工具有三种,即:结构化语言、判定表、判定树。 ( 10 )二、选择题(每小题1分,共5分)1. 软件开发中,模块设计的原则是( 11 ) 。 11 (A) 低偶合、高内聚 (B) 高偶合、高内聚

3、(C) 高偶合、低内聚 (D) 低偶合、低内聚2. 进程从运行状态进入就绪状态的原因可能是( 12 )。 12 (A) 时间片用完 (B) 等待某一事件(C) 等待的事件已发生 (D) 被选中占有处理机3. 队列的操作原则是( 13 )。 13 (A) 先进后出 (B) 先进先出(C) 只进不出 (D) 只出不进4. 以下( 14 )不是实时操作系统的特点。 14 (A) 高可靠性 (B) 及时响应(C) 高效性 (D) 通用性5. 程序流程图是用于描述结构化方法中 ( 15 )工作阶段的工具。 15 (A) 可行性分析 (B) 程序编码 (C) 详细设计 (D) 需求分析 第二部分C与C+语

4、言程序设计(共85分)一、单项选择题 ( 每小题1分,共10分 ) 1. 下列关于C+语言类的描述中错误的是( 16 ) 。16 (A) 类用于描述事物的属性和对事物的操作(B) 类与类之间通过封装而具有明确的独立性(C) 类与类之间必须是平等的关系,而不能组成层次结构(D) 类与类之间可以通过一些方法进行通信和联络 2. C+中,已知有如下定义:const int D=5;int i=1;long int f=0;char c=15;则下列选项错误的是( 17 )。17 (A) +i; (B) D-; (C) c+; (D) -f; 3. 下面关于类和对象的描述中,错误的是 ( 18 )。1

5、8 (A) 类就是C语言中的结构体类型,对象就是C语言中的结构体变量(B) 类和对象之间的关系是抽象和具体的关系(C) 对象是类的实例,一个对象必须属于一个已知的类(D) 类是具有共同行为的若干对象的统一描述体 4. 设有定义:int n=0,*p=&n,*q=&p,则下列选项中正确的赋值语句是( 19 )。19 (A) p=5; (B) *q=5; (C) q=p; (D) *p=5; 5. 设有定义:char s20= ab101ncd; 则sizeof(s)和strlen(s)的值为( 20 )。 20 (A) 6,6 (B) 20,6 (C) 20,7 (D) 20,10 6. 在C语

6、言的函数中( 21 )。21 (A) 必须有形参 (B) 形参必须是变量名(C) 可以有也可以没有形参 (D) 数组名不能作为形参 7. 下列程序输出结果是( 22 )。# include stdio.h# define SQR(x) x*xvoid main() int a=10,k=2,m=1; a/=SQR(k+m)/SQR(k+m); printf(%dn,a);22 (A) 10 (B) 1 (C) 9 (D) 0 8. 已知学生记录描述如下struct student int no; char name20; char sex; struct int year; int month

7、; int day; birth;struct student s;设变量s中“生日”是“1982年5月29日”,对“生日”的正确赋值方式是( 23 )。23 (A) year=1982;month=5;day=29;(B) birth.year=1982;birth.month=5;birth.day=29;(C) s.year=1982;s.month=5;s.day=29;(D) s.birth.year=1982;s.birth.month=5;s.birth.day=29; 9. 有下列程序输出结果是 ( 24 )。 # include void dig(char *s) char

8、*p=s; while(*s) *s=0 & *s=9?s+:(*p+=*s+); *p=0;void main() char *str=A1B2C3; dig(str); puts(str);24 (A) ABC (B) A1B2C3 (C) A1B2C (D) ABC3 10. 在下面的选项中,赋值语句错误的是 ( 25 ) 。25 (A) i+; (B) a=(b=(c=2,d=3); (C) a=aa; (D) a=a*b=2;二、读程序回答问题 ( 每个选择3分,共45分 ) 1. 读下面程序并回答问题:# include void fun1(int x,int y) int t;

9、t=x; x=y; y=t;void fun2(int x) int t; t=x0; x0=x1; x1=t; void main() int a2=1,2,b2=1,2; fun1(b0,b1);fun2(a); printf(%d,%d,%d,%dn,a0,a1,b0,b1);(1) 下列说法错误的是( 26 )。26 (A) 数组名作为函数参数进行传递,传递的是数组的首地址(B) 数组名作为函数参数时,形参数组与实参数组共用内存空间(C) 普通变量作为函数参数进行传递,实参与形参之间发生的是单向值传递(D) 数组名作为函数参数时,传递的是数组元素的值(2) 程序的运行结果是( 27 )

10、。27 (A)1,2,1,2 (B) 1,2,2,1 (C) 2,1,1,2 (D) 2,1,2,1 2. 读程序并回答问题。# include int fun() static int c=0; c+; return c;void main(int argc,char *argv) int x,i,j; for(i=1;iargc;i+) for(j=0;argvij!=0;j+) x=fun(); printf(%dn,x*argc); (1)若程序经编译连接后生成可执行文件2_3.exe,若键入以下命令行:2_3 abcd 123则程序的运行结果为( 28 )。28 (A) 3 (B)

11、21 (C) 9 (D) 0 (2)若将函数fun中的static去掉,变为int c=0; 程序经编译后连接生成可执行文件2_3.exe,若键入以下命令行:2_3 abcd 123则程序的运行结果为( 29 )。29 (A) 3 (B) 30 (C) 22 (D) 10 3. 读程序并回答问题# include # include void fun(char *s,int p1,int p2) char t; while(p1p2) t=*(s+p1); *(s+p1)=*(s+p2); *(s+p2)=t; p1+; p2-; void main() char str10; int i;

12、for(i=0;i9;i+) stri=A+i; stri=0; puts(str); fun(str,0,strlen(str)-1); puts(str); (1)第一个puts(str)的输出结果为( 30 )。30 (A) AHCFEDGBI (B) IBGDEFCHA(C) ABCDEFGHI (D) IHGFEDCBA (2)第二个puts(str)的输出结果为( 31 )。31 (A) AHCFEDGBI (B) IBGDEFCHA(C) ABCDEFGHI (D) IHGFEDCBA 4. 阅读下面程序,回答问题。void main() int n,m,s=0,t=1; sca

13、nf(%d,&m); for(n=1;n=m;n+) t*=n; s+=t; printf(%dn,s);程序的功能是( 32 )32 (A) 实现1的阶乘至m的阶乘的求和 (B) 求m的阶乘(C) 1到m的求和(D) 实现1至m-1的阶乘的求和 5. 读程序,回答问题。# include void main() char s80; int i,j; gets(s); for(i=j=0;si!=0;i+) if(si!=c) sj+=si; sj=0; puts(s);程序运行时输入cctv10,其输出结果为( 33 )。33 (A) cc (B) tv10 (C) ctv10 (D) tv

14、10cc 6. 有下列程序:# include char func(char *s) char *p=s; while(*p!=0) p+; return p-s;void main() printf(n%dn,func(Hello!); getch(); (1)程序的运行结果是( 34 )。34 (A) 3 (B) Hello!6 (C) 无输出 (D) 6 (2)指针变量的运算不可以( 35 )。35 (A) 指针变量加整形变量 (B) 指针变量减整形变量(C) 指针变量加指针变量 (D) 指针变量减指针变量 7. 以下是一个C+程序,读程序写出程序运行结果。# include void

15、main() int num=0,i=8; do i-; num+; while(-i); coutnumendl;程序的运行结果是( 36 )。36 (A) 2 (B) 0 (C) 4 (D) 5 8. 有下列程序:# include void main() char c=A; int k=0; do switch(c+) case A: k+; break; case B: k-; case C: k+=2; break; case D: k%=2; continue; case E: k*=10;break; default: k/=3; k+; while(cG); printf(k=

16、%dn,k); getch(); (1)程序输出结果是( 37 )。37 (A) k=3 (B) k=4 (C) k=2 (D) k=0 (2)本程序中continue的作用( 38 )。38 (A) 与break一样 (B) 不起任何作用(C) 开始下一次循环 (D) 出现语法错误 9. 有下列程序int w=3;int fun(int k) if(k=0) return w; return(fun(k-1)*k);void main() int w=10; printf(%dn,fun(5)*w); 输出结果是( 39 )。39 (A) 360 (B) 3600 (C) 1080 (D)

17、1200 10. 有下列程序void main() char ch25=6934,8254,*p2; int i,j,s=0; for(i=0;i2;i+) pi=chi; for(i=0;i0&pij=9;j+=2) s=10*s+pij-0; printf(%dn,s); 输出结果是( 40 )。40 (A)6385 (B) 69825 (C) 63825 (D) 693825注意: 请把下面“程序填空”中各小题答案写在主观题答题纸上 每一个空只填一个语句或一个语句所缺的部分内容三、程序填空 ( 每空2分,共30分 ) 1. 函数fun的功能是:找出N行M列二维数组元素中的最大值,并作为函

18、数值返回,最大值的行列下标通过形参指针带回main函数中。请填空。# include # define N 3# define M 4int fun(int aNM,int *row,int *col) int i,j,r,c; r=c=0; for(i=0;iN;i+) for(j=0;j ) r=i; c=j; ; *col=c; ;void main() int aNM=1,2,3,4,5,6,7,8,9,10,11,12; int row,col,max; max=fun(a,&row,&col); printf(max=%d,row=%d,col=%dn,max,row,col);

19、2. 程序的功能是:求出分数序列2/1,3/2,5/3,8/5,13/8前20项之和,请填空。# include void main() double x=2,y=1,t,s=0; int i; for(i=1;i=20;i+) s= ; t= ; x= ; y=t; printf(s=%fn,s); 3. 有5个学生的成绩需要保存在文件score.dat文件中,保存格式如下:姓名,年龄,成绩 请填空。# include void main() FILE *fp; int i; char name80; int age; float score; fp=fopen( ,w); for(i=0;

20、i5;i+) printf(请输入第%d个学生的信息n,i); printf(姓名:); scanf(%s,name); printf(年龄:); scanf(%d,&age); printf(成绩:); ; fprintf(fp,%s,%d,%fn,name,age,score); ; 4. 下列程序的功能是:从5个字符串中找出最长的那个字符串。请填空。# include # include # define N 5# define M 81char *fun(char (*sq)M) int i; ; sp=sq0; for(i=1;iN;i+) if( ) sp=sqi; return

21、sp;void main() char strNM,*longest; int i; printf(please enter 5 string:); for(i=0;iN;i+) gets(stri); for(i=0;iN;i+) puts(stri); longest= ; printf(nThe longest string:); puts(longest); 5. 下面程序的功能是:由25人坐成圆圈,先从任一人出发用1到25顺时针依次编号,然后从1号开始顺时针报数(1,2,3,4,),数到5的倍数的出圈,剩下的继续报数,求最后出圈的编号。# include void main() int a26,j,n,count; for(j=1;j25) j=1; while( );

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

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