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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

本文(C语言23次试题及答案.docx)为本站会员(b****4)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

C语言23次试题及答案.docx

1、C语言23次试题及答案四川省普通高等学校计算机应用知识和能力第二十三次等级考试二级(C与C+语言) 笔 试 试 卷时间: 2005年10月15日 上午 9:0011:00第一部分软件技术基础(共15分)一、是非判断题(每小题1分,共10分)( 判断下列各题是否正确,如正确,在客观答题纸上对应编号选A,否则选B )1. 数据在计算机内在中的表示是指数据的存储结构。 ( 1 )2. 能影响中断响应次序的技术是中断优先级和中断屏蔽。 ( 2 )3. 链表可以随机访问任意一个结点,而顺序表则不能。 ( 3 )4. 作业与进程的主要区别是前者是由用户提交,后者是由系统自动生成。 ( 4 )5. Wind

2、ows、OS/2、Linux微机操作系统都是多用户多任务操作系统。 ( 5 )6. 数据的逻辑结构是从逻辑关系上描述数据,它与数据的存储结构无关,是独立于计算机的。 ( 6 )7. 流式文件和记录式文件都以字符为基本单位进行存取。 ( 7 )8. 不定长文件是指字段的长度不固定。 ( 8 )9. 软件工程的三要素包括方法、工具和环境。 ( 9 )10.软件结构是以指令为基础而组成的一种控制层次结构。 ( 10 )二、选择题(每小题1分,共5分)1. 若进栈序列为1,2,3,4,且进栈过程中可以出栈,则不可能出栈的序列是 ( 11 ) 11 (A) 1,4,3,2 (B) 2,3,4,1 (C)

3、 3,1,4,2 (D) 3,4,2,12. 任何两个并发进程之间( 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)软件的测试第二部分

4、C与C+语言程序设计(共85分)一、单项选择题(每小题1分,共10分) 1. 若变量已定义并赋值,下列符合C语法的表达式是 ( 16 ) 16 (A) a:=b+1 (B) a=b=c+2 (C) int 18.5%3 (D) a=a+7=c+b 2. 以下程序输出的结果是 ( 17 ) void main() char s=Hello China; s5=0; puts(s); 17 (A) Hello (B) China (C) Hello China (D) O 3. 有以下程序 #include void main() char *p,*q; p=(char *)malloc(size

5、of(char)*20); q=p; scanf(%s %s,p,q); printf(%s,%sn,p,q); 若输入abc def,则输出为 ( 18 )。 18 (A) def,def (B) abc,def (C) abc,d (D) d,d 4.下列函数形式正确的是( 19 )。 19 (A) double fun(int x,int y) (B) fun(int x,y) z=x+y; int z; return z; return z; (C) fun(x,y) (D) double fun(int x,int y) int x,y; double z; double z=x+y

6、; z=x+y; return z; return z; 5.下列有关类和对象的说法不正确的是( 20 ) 。 20 (A) 对象是类的一个实例 (B) 一个类只能有一个对象 (C) 任何一个对象只能属于一个具体的类 (D) 类与对象的关系和数据类型与变量的关系相似 6. 派生类的对象对它的基类成员中( 21 )是可以访问的。 21 (A) 公有继承的公有成员 (B) 公有继承的私有成员 (C) 保护继承的公有成员 (D) 私有继承的公有成员 7. 已知学生的结构体描述如下: struct students int no; char name10; char sex; struct int d

7、ay; int month; int year; birth; int score; ; 用学生结构体定义了变量w : struct students w; 设变量w中的生日是1982年5月29日,下列对生日的正确赋值方法是( 22 )。 22 (A) day=29; (B) w.day=29 month=5; w.month=5; year=1982; w.year=1982; (C) w.birth.day=29; (D) birth.day=29; w.birth.month=5; birth.month=5; w.birth.year=1982; birth.year=1982; 8.

8、 假定p1和p2是已赋值的int型指针,则下面有关运算中,( 23 )是非法的。 23 (A) (p1+=4)=p2 (B) p2=10-p1; (C) if(p1!=p2) printf(!=); (D) p1+=(p2-p1); 9. 关于C/C+语言,以下叙述正确的是( 24 )。 24 (A) C是面向过程的程序设计语言,C+不支持面向过程的程序设计 (B) C语言支持图形设计,C+不支持 (C) C程序由函数组成,而C+程序由类组成 (D) C是C+的子集 10. 设有以下语句: char x=3,y=6,z; z=xy2; 则z的值是( 25 )。 25 (A) 00010100

9、(B) 00011100 (C) 00011011 (D) 00011000二、读程序回答问题(每个选择3分,共45分) 1. 下列程序运行的结果为 ( 26 )。 # include void main() int a=2,b=-1,c=2; if(ab) if(bc) c=0; else c+=1; printf(%d,c); 26 (A) 3 (B) 2 (C) 1 (D) 0 2. 下列程序运行的结果为 ( 27 )。 # include void main() int a=15,b=21,m=0; switch(a%3) case 0 : m+; break; case 1 : m+

10、; switch(b%2) default : m+; case 0 : m+; break; printf(%d, m ); 27 (A) 1 (B) 2 (C) 3 (D) 4 3. 以下程序运行后,文件test 中的内容为 ( 28 )。 # include # include void fun(char *fname, char *st) FILE *fp; int i; fp=fopen(fname,w); for(i=0; istrlen(st); i+ ) fputc(sti , fp ); fclose(fp); void main() fun(test,world); fun

11、(test,hello); 28 (A) world (B) worldhello (C) helloworld (D) hello 4. 读下列程序: # include void main() union value char ch; int n; double f; Data; coutsizeof(Data)=sizeof(Data)endl; Data.ch=a; coutData.chendl; Data.n=100; coutData.hendl; Data.f=78.168; coutData.fendl; value 是 ( 29 )。 29 (A) 共用体变量名 (B) 共

12、用体名 (C) 结构体变量名 (D) 结构体名 程序的运行结果是 ( 30 )。 30 (A) sizeof(Data)=13 (B) sizeof(Data)=8 a a 100 100 78.168 78.168 (C) 13 (D) 8 a a 100 100 78.168 78.168 5. 读下列程序: # include void main() static char str50=485057ehk105101,*p=str; int sum1=0,sum2=0; while(*p!=0) if(*p=48 & *p=101 & *p=107) sum2+; else; p+; c

13、outsum1,sum2endl; 程序的运行结果是 ( 31 )。 31 (A) 3,2 (B) 2,3 (C) 3,12 (D) 12,3 while(*p!=0) 与 ( 32 ) 功能相同。 32 (A) while(*p!=0) (B) while(*p=0) (C) while(*p0) (D) while(*p!0) 6. 读下列程序: # include # include void fun(char *w, int n) char t,*s1,*s2; s1=w; s2=w+n-1; while(s1s2) t=*s1+; *s1=*s2-; *s2=t; void main

14、() char *p; p=1234567; fun(p,strlen(p); puts(p); 输出结果是 ( 33 )。 33 (A) 7654321 (B) 1711717 (C) 1714171 (D) 1234567 若把程序中的语句:while(s1s2) t=*s1+; *s1=*s2-; *s2=t; 改写成: while (s1s2) t=*s1; *s1=*s2; *s2=t; s1+; s2+; ,则输出结果是( 34 )。 34 (A) 7654321 (B) 1711717 (C) 1714171 (D) 1234567 7. 下列程序运行结果是 ( 35 )。 #

15、define X 5 # define Y X+1 # define Z Y*X/2 void main() int a; a=Y; printf(%d , Z); printf(%dn,-a); 35 (A) 7 6 (B) 12 6 (C) 12 5 (D) 7 5 8. 读下列程序: # include int x; void sub(int *s , int x ) static int t=0; x+=st; t+; void main() int a=3,8,4,2,i; int x=0; for(i=0; i4; i+) sub(a,x); printf(%3d,x); 程序的执

16、行结果是 ( 36 )。 36 (A) 3 8 4 2 (B) 3 11 15 17 (C) 0 0 0 0 (C) 2 4 8 3 若把程序第二行的语句 int x; 删除,运行结果是 ( 37 )。 37 (A) 3 8 4 2 (B) 3 11 15 17 (C) 0 0 0 0 (C) 2 4 8 3 9. 读下列程序分析运行结果 # include char *cat( char *str1 , char *str2 ) char *pt; for(pt=str1; *pt!=0; pt+); while(*str2!=0) *pt+=*str2+; return(pt); void

17、 main() char *p,s130=210,s230=45; p=cat(s1,s2); printf(%dn,p-s1); p=cat(s1,s2); printf(%dn,p-s1); 主函数中,执行第一个输出函数后的结果为 ( 38 )。 38 (A) 5 (B) 6 (C) 7 (D) 8 主函数中,执行第二个输出函数后的结果为 ( 39 )。 39 (A) 5 (B) 6 (C) 7 (D) 8 10. 下列程序的运行结果是 ( 40 )。 # include void main() char *str=One,Two,Three,Four; char *ptr=str; in

18、t i; for(i=0;i3;i+) printf(%s, (ptr+1)i ); 40 (A) newohree (B) Two (C) TwoThreeFour (D) 指针运算非法,无输出注意: 请把下面“程序填空”中各小题答案写在主观题答题纸上 每一个空只填一个语句或一个语句所缺的部分内容三、程序填空 ( 每空2分,共30分 ) 1. 以下程序可把输入的十进制数以十六进制的形式输出。 # include void main() char b17=0123456789ABCDEF; int c64,d,i=0,base=16; long n; scanf(%ld,&n); do ci=

19、 ; i+; n=n/base; while(n!=0); for(i-; i=0; -i) d= ; printf(%c, ); printf(n); 2. 有一个数是43634,其左右对称,求比它大的对称数中最小的那个。 # include void main() long int i=43634,j; int count,ch10; do i+; j=i; count=0; while(j) chcount=j%10; j= ; count+; if( ) break; while(1); printf(%ldn, ); 3. 以下程序能统计并输出1至100之间所有能被3整除但不能被7整

20、除的所有正整数。 # include # define M 100 void fun( int m, int *p, int *t) int i,num=0; for(i=1;i=m;i+) if( ) ; *t=num; void main() int aM,n,k; ; for(k=0;kn;k+) if( (k+1) % 5 = 0 ) printf(n); else printf(%3d,ak); printf(n); 4. 下面程序功能是从字符串s中删除任何在第二个字符串t中出现的字符,然后输出。 # include void main() char s81,t20,*p1,*p2;

21、 int i; scanf(%s%s, ); printf(n); p1=s; for(i=0;*(p+i);i+) for(p2=t;*p2;p2+) while( ) strcpy( ); printf(%s,s); 5. 文件stu.txt中存放了一个学生各门课程的考试分数,数据之间以逗号分割。下面程序将文件中的所有分数取出,计算出平均分,显示在屏幕上,还要把这个平均分数按原文件的数据格式记录在原文件中。例如文件stu.txt中存放的为“60.5,81.1,93.5,90.5”,则程序运行后文件stu.txt中为“60.5,81.1,93.5,90.5,78.366669”。 # inc

22、lude void main() int n=0; float x=0.0,y; FILE *fp; fp= ; do fscanf( ); if(feof(fp) break; x+=y; n+; while(1); x=x/n; printf(average=%f,x); ; fclose(fp); 第二十三次等级考试第一部分 软件技术基础一、是非判断题(每小题1分,共10分)110:AABABABBBB二、选择题(每小题1分,共5分)15 :CDADA第二部分 C与C+语言程序设计一、单项选择题(每小题1分,共10分) 1、B 2、A 3、A 4、D 5、B 6、A 7、C 8、A/B 9、D 10、C二、读程序回答问题(每个选择3分,共45分) 1、B 2、A 3、D 4、B B 5、D A 6、B A 7、D 8、C C 9、A C 10、C三、程序填空 ( 每空2分,共30分 ) 1、 n%base ci bd 2、 j/10 ch0=ch4 & ch1=ch3 i 3、 i%3=0&i%7!=0 pnum+=i fun ( M,a,&n ) 4、 s,t *(p1+i)=*p2 p1+i ,p1+i+1 5、 fopen (stu.txt,r+ ) fp,%f,&y fprintf ( fp,%f,x )

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

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