2023年全国家算计等级考试二级笔试题试卷.doc

上传人:知****量 文档编号:83072589 上传时间:2023-03-28 格式:DOC 页数:17 大小:59.54KB
返回 下载 相关 举报
2023年全国家算计等级考试二级笔试题试卷.doc_第1页
第1页 / 共17页
2023年全国家算计等级考试二级笔试题试卷.doc_第2页
第2页 / 共17页
点击查看更多>>
资源描述

《2023年全国家算计等级考试二级笔试题试卷.doc》由会员分享,可在线阅读,更多相关《2023年全国家算计等级考试二级笔试题试卷.doc(17页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、2023年9月全国家算计等级考试二级笔试题试卷C语言程序设计(考试时间90分钟,满分100分)一、 选择题(1)(10)、(21)(40)每题2分,(11)(20)每题1分,共70分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是对的的。请将对的答案选项填涂在答题卡相应位置上,答在试卷上不得分。(1)下列叙述中对的的是( )A)算法就是程序 B)设计算法是只需要考虑数据结构的设计C)设计算法时只需要考虑结果的可靠性 D)以上三种说法都不对(2)下列关于线性链表的叙述中,对的的是( )A)各数据结点的存储空间可以不连续,但它们的存储顺序与逻辑顺序必须一致B)各数据结点的存储顺序与逻辑顺

2、序可以不一致,但它们的存储空间必须连续C)进行插入与删除时,不需要移动表中的元素D)以上三种说法都不对(3)下列关于二叉树的叙述中,对的的是( )A)叶子结点总是比度为2的结点少一个 B)叶子结点总是比度为2的结点多一个C)叶子结点数是度为2的结点数的两倍 D)度为2的结点数是度为1的结点数的两倍(4)软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件)。下面属于应用软件的是( )A)学生成绩管理系统 B)C语言编译程序C)UNIX操作系统 D)数据库管理系统(5)某系统总体结构图如下图所示: XY系统功能1功能2 功能3功能2.1功能2.2功能2.3该系统总体结构图的深度是( )A)

3、7 B)6 C)3 D)2(6)程序调试的任务是( )A)设计测试用例 B)验证程序的对的性C)发现程序中的错误 D)诊断和改正程序中的错误(7)下列关于数据库设计的叙述中,对的的是( )A)在需求分析阶段建立数据字典 B)在概念设计阶段建立数据字典C)在逻辑设计阶段建立数据字典 D)在物理设计阶段建立数据字典(8)数据库系统的三级模式不涉及( )A)概念模式 B)内模式 C)外模式 D)数据模式(9)有三个关系R、S和T如下: R S TABCa12b21c31ABCa12b21ABCc31 则由关系R和S得到关系T的操作是( )A)自然连接 B)差 C)交 D)并(10)下列选项中属于面向

4、对象设计方法重要特性是( )A)继承 B)自顶向下 C)模块化 D)逐步求精(11)以下叙述中错误的是( )A)C语言编写的函数源程序,其文献名后缀可以是.CB)C语言编写的函数都可以作为一个独立的源程序文献C)C语言编写的每个函数都可以进行独立的编译并执行D)一个C语言程序只能有一个主函数(12)以下选项中关于程序模块化的叙述错误的是( )A)把程序提成若干相对独立的模块,可便于编码和调试B)把程序提成若干相对独立、功能单一的模块,可便于反复使用这些模块C)可采用自底向上、逐步细化的设计方法把若干独立模块组装成所规定的程序D)可采用自顶向下、逐步细化的设计方法把若干独立模块组装成所规定的程序

5、(13)以下选项中关于C语言常量的叙述错误的是( )A)所谓常量,是指在程序运营过程中,其值不能被改变的量B)常量分为整型常量、实型常量、字符常量和字符串常量C)常量分为数值型常量和非数值型常量D)经常被使用的变量可以定义成常量(14)若有定义语句:int a=10; double b=3.14;,则表达式A+a+b值的类型是( )A)char B)int C)double D)float(15)若有定义语句:int x=12,y=8,z;,在其后执行语句z=0.9+x/y;,则z的值为( )A)1.9 B)1 C)2 D)2.4(16)若有定义:int a,b;,通过语句scanf(“%d;

6、%d”,&a,&b);,能把整数3赋给变量a,5赋给变量b的输入数据是( )A)3 5 B)3,5 C)3;5 D)35(17)若有定义语句:int k1=10,k2=20;,执行表达式(k1=k1k2)&(k2=k2k1)后,k1和k2的值分别为( ) A)0和1 B)0和20 C)10和1 D)10和20(18)有以下程序#include main() int a=1,b=0;if(-a) b+;else if(a=0) b+=2;else b+=3;printf(“%dn”,b);程序运营后的输出结果是( )A)0 B)1 C)2 D)3(19)下列条件语句中,输出结果与其他语句不同的是

7、( )A)if(a) printf(“%dn”,x); else printf(“%dn”,y);B)if(a=0) printf(“%dn”,y); else printf(“%dn”,x);C)if(a!=0) printf(“%dn”,x); else printf(“%dn”,y);D)if(a=0) printf(“%dn”,x); else printf(“%dn”,y);(20)有以下程序#include main() int a=7;while(a-);printf(“%dn”,a);程序运营后输出的结果是( )A)-1 B)0 C)1 D)7(21)以下不能输出字符A的语句是

8、( ) (注:字符A的ASCLL码值为65,字符a的ASCLL码值为97) A)printf(“%cn”,a-32); B)printf(“%dn”,A); C)printf(“%cn”,65); D)printf(“%cn”,B-1);(22)有以下程序(注:字符a的ASCLL码值为97)#include main() char *s=“abc”;do printf(“%d”,*s%10);+s while(*s);程序运营后的输出结果是( )A)abc B)789 C)7890 D)979899(23)若有定义语句:double a,*p=&a; 以下叙述中错误的是( )A)定义语句中的

9、* 号是一个间址运算符B)定义语句中的 * 号只是一个说明符C)定义语句中的p只能存放double类型变量的地址D)定义语句中,*p=&a把变量a的地址作为初始值赋给指针变量p(24)有以下程序#include double f(double x);main() double a=0; int i;for(i=0;i30;i+=10) a+=f(double)i);printf(“%5.0fn”,a);double f(double x) return x*x+1; 程序运营后的输出结果是( )A)503 B)401 C)500 D)1404(25)若有定义语句:int year=2023,*

10、p=&year;,以下不能使变量year中的值增至2023的语句是( ) A)*p+=1; B)(*p)+; C)+(*p); D)*p+;(26)以下定义数组的语句中错误的是( )A)int num=1,2,3,4,5,6; B)int num3=1,23,4,5,6;C)int num24=1,2,3,4,5,6; D)int num4=1,2,3,4,5,6;(27)有以下程序#include void fun(int *p) printf(“%dn”,p5); main() int a10=1,2,3,4,5,6,7,8,9,10;fun(&a3);程序运营后的输出结果是( )A)5

11、B)6 C)8 D)9(28)有以下程序#include #define N 4void fun(int aN,int b) int i;for(i=0;iN;i+) bi=aii-aiN-1-i;main() int xNN=1,2,3,4,5,6,7,8,9,10,11,12,13,1,4,15,16,yN,ifun(x,y);for(i=0;iN;i+) printf(“%d,”,yi); printf(“n”);程序运营后的输出结果是( )A)-12,-3,0,0, B)-3,-1,1,3 C)0,1,2,3, D)-3,-3,-3,-3,(29)有以下函数int fun(char *

12、x,char *y) int n=0;while(*x=*y)&*x!=0)x+; y+; n+;return n;函数的功能是( )A) 查找x和y所指字符串中是否有0B) 记录x和y所指字符串中最前面连续相同的字符个数C) 将y所指字符串赋给x所指存储空间D) 记录x和y所指字符串中相同的字符个数(30)若有定义语句:char *s1=“OK”,*s2=“ok”;,以下选项中,可以输出“OK”的语句是( ) A)if(strcmp(s1,s2)=0) puts(s1); B)if(strcmp(s1,s2)!=0) puts(s2); C)if(strcmp(s1,s2)=1) puts(

13、s1); D)if(strcmp(s1,s2)!=0) puts(s2);(31)以下程序的主函数中调用了在其前面定义的fun函数 #include main() double a15,k;k=fun(a); 则以下选项中错误的fun函数首部是( )A)double fun(double a15) B)double fun(double *a)C)double fun(double a) D)double fun(double a)(32)有以下程序#include #include main() char a510=“china”,“beijing”,“you”,“tiananmen”,“w

14、elcome”;int i,j; char t10;for(i=0;i4;i+)for(j=i+1;j0 ) strcpy(t,ai); strcpy(ai,aj); strcpy(aj,t); puts(a3);程序运营后的输出结果是( )A)beijing B)china C)welcome D)tiananmen(33)有以下程序#include int f(int m) static int n-0;n+=m;return n;main() int n-0;printf(“%d,”,f(+n);printf(“%dn”,f(n+);程序运营后的输出结果是( )A)1,2 B)1,1 C

15、)2,3 D)3,3(34)有以下程序#include main() char ch35=“AAAA”,“BBB”,“CC”;printf(“%sn”, ch1);程序运营后的输出结果是( )A)AAAA B)CC C)BBBCC D)BBB(35)有以下程序#include #include void fun(char *w,int m) char s,*p1,*p2;p1=w; p2=w+m-1;while(p1p2)s=*p1; *p1=*p2; *p2=s; p1+; p2-;main() char a=“123456”;fun(a,strlen(a); puts(a);程序运营后的输

16、出结果是( )A)654321 B)116611 C)161616 D)123456(36)有以下程序#include #include typedef structchar name9; char sex; int score2; STU;STU f(STU a) STU b=“Zhao”,m,85,90;int i;strcpy(a.name,b.name);a.sex=b.sex;for(i=0;i2;i+) a.scorei=b.scorei;return a;main() STU c=“Qian”,f,95,92,d;d=f(c);printf(“%s,%c,%d,%d,”,d.na

17、me,d.sex,d.score0,d.score1);printf(“%s,%c,%d,%dn”,c.name,c.sex,c.score0,c.score1);程序运营后的输出结果是( )A)Zhao,m,85,90,Qian,f,95,92 B)Zhao,m,85,90,Zhao,m,85,90C)Qian,f,95,92,Qian,f,95,92 D)Qian,f,95,92,Zhao,m,85,90(37)有以下程序#include main() struct nodeint n; struct node *next; *p;struct node x3=2, x+1,4, x+2,

18、6, NULL;p=x;printf(“%d,”,p-n );printf(“%dn”, p-next-n );程序运营后的输出结果是( )A)2,3 B)2,4 C)3,4 D)4,6(38)有以下程序#include main() int a=2,b;b=a2; printf(“%dn”,b);程序运营后的输出结果是( )A)2 B)4 C)6 D)8(39)以下选项中叙述错误的是( )A)C程序函数中定义的赋有初始值的静态变量,每调用一次函数,赋一次初始值B)在C程序的同一函数中,各复合语句内可以定义变量,其作用域仅限本复合语句内C)C程序函数中定义的自动变量,系统不自动赋拟定的初值D)

19、C程序函数的形参不可以说明为static型变量(40)有以下程序#include main() FILE *fp;int k,n,i,a6=1,2,3,4,5,6;fp=fopen(“d2.dat”,“w”);for(i=0;i6;i+) fprintf(fp,“%dn”,ai);fclose(fp);fp=fopen(“d2.dat”,“r”);for(i=0;i3;i+) fscanf(fp,“%d%d”,&k,&n);fclose(fp);printf(“%d,%dn”,k,n);程序运营后的输出结果是( )A)1,2 B)3,4 C)5,6 D)123,456二、 填空题(每空2分,共

20、30分)请将每空的对的答案写在答题卡【1】至【15】序号的横线上,答在试卷上不得分。(1) 数据结构分为线性结构与非线性结构,带链的栈属于_。(2) 在长度为n的顺序存储的线性表中插入一个元素,最坏情况下需要移动表中_个元素。(3) 常见的软件开发方法有结构化方法和面向对象方法。对某应用系统通过需求分析建立数据流图(DFD),则应采用_方法。(4) 数据库系统的核心是_。(5) 在进行关系数据库的逻辑设计时,E-R图中的属性常被转换为关系中的属性,联系通常被转换为_。(6) 若程序中已给整型变量a和b赋值10和20,请写出按以下格式输出a、b值的语句_。(7) 以下程序运营后的输出结果是_。#

21、include main() int a=37;a%=9; printf(“%dn”,a);(8) 以下程序运营后的输出结果是_。#include main() int i,j;for(i=6;i3;i-) j=i;printf(“%d%dn”,i,j);(9)以下程序运营后输出结果是_。#include main() int i,n=0,0,0,0,0;for(i=1;i=2;i+) ni=i-1*3+1;printf(“%d”,ni);printf(“n”);(10)以下程序运营后输出结果是_。#include main() char a;for(a=0;a15;a+=5) putchar

22、(a+A);printf(“n”);(10)以下程序运营后输出结果是_。#include void fun (int x) if(x/50) fun(x/5);printf(“%d”,x);main() fun(11); printf(“n”); (12)有以下程序#include main() int c3=0,k,i;while(k=getchar() )!=n)ck-A+;for(i=0;i3;i+) printf(“ %d”,ci); printf(“n”);若程序运营时从键盘输入ABCACC,则输出结果为_。(13)以下程序运营后的输出结果是_。#include main() int

23、 n2,i,j;for(i=0;i2;i+) ni=0;for(i=0;i2;i+)for(j=0;j2;j+) nj=ni+1;printf(“%dn”,n1);(14)以下程序调用fun函数把x中的值插入到a数组下标为k的数组元素中。主函数中,n存放a数组中数据的个数。请填空。#include void fun(int s,int *n,int k,int x) int i;for(i=*n-1;i=k;i-)s_=si;sk=x;*n=*n+_;main() int a20=1,2,3,4,5,6,7,8,9,10,11,i,x=0,k=6,n=11;fun(a,&n,k,x);for(i=0;in;i+) printf(“%4d”,ai); printf(“n”);

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 初中资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁