第二届全国软件专业人才设计与开发大赛题目

合集下载

国家二级(JAVA)笔试模拟试卷1(题后含答案及解析)

国家二级(JAVA)笔试模拟试卷1(题后含答案及解析)

国家二级(JA V A)笔试模拟试卷1(题后含答案及解析) 题型有:1. 选择题 2. 填空题选择题(每小题2分,共70分)下列各题A、B、C、D四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上。

1.在深度为5的满二叉树中,叶子结点的个数为A.32B.31C.16D.15正确答案:B解析:所谓满二叉树是指这样的一种二叉树:除最后一层外,每一层上的所有结点都有两个叶子结点。

这就是说,在满二叉树中,层上的结点数都达到最大值,即在满二叉树的第k层上有2k-1个结点,且深度为m的满二叉树有2m-1个结点。

2.若某二叉树的前序遍历访问顺序是abdscefh,中序遍历访问顺序是dgbaechf,则其后序遍历的结点访问顺序是A.bdgcefhaB.gdbecfhaC.bdgaechfD.gdbehfca正确答案:D解析:前序遍历的第一个结点a为树的根结点;中序遍历中a的左边的结点为a的左子树,a右边的结点为a的右子树;再分别对a的左右子树进行上述两步处理,直到每个结点都找到正确的位置。

3.一些重要的程序语言(如C语言和Pascal语言)允许过程的递归调用。

而实现递归调用中的存储分配通常用A.栈B.堆C.数组D.链表正确答案:A解析:一些较流行的程序语言允许过程的递归调用。

递归调用就是过程调用本身。

递归实现的是:当过程每一次执行后,都能返回到最近一次调用它的过程中。

这样各调用点之间形成一种后进先出关系,而栈结构正适合来存储这些调用点。

4.软件工程的理论和技术性研究的内容主要包括软件开发技术和A.消除软件危机B.软件工程管理C.程序设计自动化D.实现软件可重用正确答案:B解析:软件工程的目标是,在给定的成本、进度的前提下,开发出具有有效性、可靠性、可理解性、可维护性、可重用性、可适应性、可移植性、可追踪性和可互操作性且满足用户需求的产品。

基于这一目标,软件工程的理论和技术性研究的内容主要包括:软件开发技术和软件工程管理。

全国软件专业人才设计与开发大赛预赛试题C

全国软件专业人才设计与开发大赛预赛试题C

2011年选拔赛c 本科1.代码填空(满分3分)神秘的三位数有这样一个3位数,组成它的3个数字阶乘之和正好等于它本身。

即:abc = a! + b! + c!下面的程序用于搜索这样的3位数。

请补全缺失的代码。

把填空的答案(仅填空处的答案,不包括题面)存入考生文件夹下对应题号的“解答.txt”中即可。

int JC[] = {1,1,2,6,24,120,720,5040,40320,362880};int i;for(i=100; i<1000; i++){int sum = 0;int x = i;while(_____x != 0_____){sum += JC[x%10];x /= 10;}if(i==sum) printf("%d\n", i);}2.代码填空(满分4分)歌赛新规则歌手大赛的评分规则一般是去掉一个最高分,去掉一个最低分,剩下的分数求平均。

当评委较少的时候,如果我们只允许去掉一个分数,该如何设计规则呢?有人提出:应该去掉与其余的分数平均值相差最远的那个分数。

即“最离群”的分数。

以下的程序用于实现这个功能。

其中x存放所有评分,n表示数组中元素的个数。

函数返回最“离群”的那个分数值。

请补全缺失的代码。

把填空的答案(仅填空处的答案,不包括题面)存入考生文件夹下对应题号的“解答.txt”中即可。

double score(double x[], int n){int i,j;double dif = -1;double bad;for(i=0; i<n; i++){double sum = 0;for(j=0; j<n; j++){if(________) sum += x[j];}double t = x[i] - sum / (n-1);if(t<0) t = -t;if(t>dif){dif = t;bad = x[i];printf("%d, %f\n", i, x[i]);}}return bad;}3.代码填空(满分4分)反转串我们把“cba”称为“abc”的反转串。

2019全国软件专业人才设计与开发大赛题目选拔试题及参考答案-5页文档资料

2019全国软件专业人才设计与开发大赛题目选拔试题及参考答案-5页文档资料

全国软件专业人才设计与开发大赛题目选拔试题及参考答案二、智力题(30分)1、单选题:(每小题4分,5小题,共20分)1)给你8颗小石头和一架托盘天平。

有7颗石头的重量是一样,另外一颗比其它石头略重,除此之外,这些石头完全没有分别。

你不得假设那颗石头到底比其它的石头重了多少。

请问:最少要称量几次,你才能把那颗较重的石头找出来?A 1次B 2次C 3次D 4次2)一个人花8块钱买了一只鸡,9块钱卖掉了,然后他觉得不划算,花10块钱又买回来了,11块卖给另外一个人。

问他赚了多少?A 1块B 2块C 3块D 4块3) 1块钱一瓶汽水,喝完后两个空瓶换一瓶汽水。

问:你有20块钱,最多可以喝到几瓶汽水?A 37瓶B 38瓶C 39瓶D 40瓶4)有一牧场,已知养牛27头,6天把草吃尽;养牛23头,9天把草吃尽。

如果养牛21头,那么几天能把牧场上的草吃尽呢?并且牧场上的草是不断生长的。

A 12天B 13天C 14天D 15天5)有四个人要在深夜通过一座桥。

这座桥最多只能承受两个人的重量,而且必须打着手电筒才能通过。

四个人只有一把手电筒,并且每个人的行走速度也不一样:第一个人通过这座桥要花1分钟,第二个人要花2分钟,第三个人要花5分钟,第四个人要花10分钟;如果两人同行,他们就只能以比较慢的那个人的速度前进。

这四个人全部通过这座桥的最短时间是多少?A 15分钟B 17分钟C 19分钟D 21分钟2、推理(共10分)假设有一个池塘,里面有无穷多的水。

现有2个空水壶,容积分别为5升和6升。

问题是如何只用这2个水壶从池塘里取得3升的水。

三、编程题(20分`二选一)1、在西方,星期五和数字13都代表着坏运气,两个不幸的个体最后结合成超级不幸的一天。

所以,不管哪个月的十三日又恰逢星期五就叫“黑色星期五”。

要求:输入年份,输出是:判断该年是否包含黑色星期五,如包含,给出具体日期2、小明去银行存钱,拿了一堆硬币。

已知1角的硬币厚度为1.8mm,5角的硬币厚1.5mm,1元的硬币为2.0mm。

全国软件设计大赛测试题目

全国软件设计大赛测试题目

要求:1、写出设计思路、算法思路。

2、写出程序。

3、运行结果截图。

第1题、两倍给定2到15个不同的正整数,你的任务是计算这些数里面有多少个数对满足:数对中一个数是另一个数的两倍。

比如给定1 4 32 9 7 18 22得到的答案是3,因为2是1的两倍,4是2的两倍,18是9的两倍。

第2题、肿瘤面积在一个正方形的灰度图片上,肿瘤是一块矩形的区域,肿瘤的边缘所在的像素点在图片中用0表示,其他肿瘤内和肿瘤外的点都用255表示。

编写一个程序,计算肿瘤内部的像素的点的个数(不包括肿瘤边缘上的点)。

已知肿瘤的边缘平行于图像的边缘。

图像数据中第一行为图像像素的行数和列数,随后为像素数据。

比如,图像数据为7 14255 255 255 255 255 255 255 255 255 255 255 255 255 255255 255 255 0 0 0 0 0 0 0 0 255 255 255255 255 255 0 255 255 255 255 255 255 0 255 255 255255 255 255 0 255 255 255 255 255 255 0 255 255 255255 255 255 0 255 255 255 255 255 255 0 255 255 255255 255 255 0 0 0 0 0 0 0 0 255 255 255255 255 255 255 255 255 255 255 255 255 255 255 255 255结果为18。

第3题、FBI树二进制串只能由“0”和“1”组成。

将由“0”和“1”组成的字符串分为三类:全“0”串称为B串,全“1”串称为I串,既含“0”又含“1”的串则称为F串。

二进制串可以转换为FBI树结构,FBI树是一棵二叉树,在该二叉树中包含F节点、B节点和I节点三种。

可以将一个长度为2n的二进制串S构造为一棵FBI树T,方法为:T的根结点为R,其类型与串S的类型相同;若串S的长度大于1,将串S从中间分开,分为等长的左右子串S1和S2;由左子串S1构造R的左子树T1,由右子串S2构造R的右子树T2。

第二届“中国软件杯”大学生软件设计方案大赛比赛题目三人脸识别及认证登录

第二届“中国软件杯”大学生软件设计方案大赛比赛题目三人脸识别及认证登录
功能性需求
1.人脸认证登录
1.1支持通过摄像头捕获和存储登录人员面部图像信息
1.2通过摄像头捕获登录人员面部信息,与预先存储的图像进行比对,如果匹配,则登录成功,否则给出错误提示
1.3可以手工输入用户名、密码作为补充
2.监控录像人脸识别
2.1提供导入被监控人图像信息功能<在JPG,PNG中至少支持JPG格式)
人脸识别在企业、住宅安全、刑侦、自助服务、信息安全等领域有着广泛的应用。
机场、铁路等重要场所经常需要对犯罪嫌疑人进行监控和识别,在值机、登机、安检等环节通过摄像头捕获用户图像,然后与预存的犯罪嫌疑人图像进行比对,通过人脸识别可以自动给出提示,协助相关部门快速定位可疑旅客。
另外,采用人脸认证登录,可以免去繁琐的密码输入,交互更加快捷方便。除此之外,作为一项典型的生物特征识别技术,人脸登录技术还具有其他加密手段不可比拟的一些优势:更符合人类的识别习惯,图像采集设备的成本低,非接触式识别,具备事后追踪能力。
类别
详细说明
满分
详细评分标准
人脸认证登录<35%)
基本功能
25分
2颠覆性的创新功能设计<25分)
3创新的功能设计,实用性强<20分)
4功能设计具有一定新意<15分)
5完成基本功能,创新性一般<10分)
性能
10分
6拒识率、误识率、识别速度均在前5%<10分)
7其中一项前5%<8分)
8三项均在前10%<6分)
9其中一项前10%<4分)
监控录像人脸识别<50%)
基本功能
30分
10颠覆性的创新功能设计<30分)
11创新的功能设计,实用性强<25分)

全国二级MS OFFICE真题.程序设计基础

全国二级MS OFFICE真题.程序设计基础

1、下列选项中不属于结构化程序设计原则的是()。

A、可封装B、自顶向下C、模块化D、逐步求精正确答案:A答题解析:结构化程序设计方法的主要原则可以概括为自顶向下,逐步求精,模块化,限制使用goto语句。

故本题答案为A。

2、下面对类-对象主要特征描述正确的是()。

A、对象唯一性B、对象无关性C、类的单一性D、类的依赖性正确答案:A答题解析:本题考查知识点是对象的主要特征。

面向对象方法中最基本的概念是对象,它的基本特点有:标识唯一性、分类性、多态性、封装性和模块独立性好。

所以本题答案为A。

3、结构化程序的三种基本控制结构是()。

A、顺序、选择和重复(循环)B、过程、子程序和分程序C、顺序、选择和调用D、调用、返回和转移正确答案:A答题解析:本题考查知识点是结构化程序基本控制结构。

结构化程序的三种基本控制结构:顺序、选择和重复(循环)所以本题答案为A。

4、下面不属于对象主要特征的是()。

A、唯一性B、多态性C、可复用性D、封装性正确答案:C答题解析:本题的考查知识点是对象基本特点。

面向对象方法中最基本的概念是对象,它的基本特点有:标识唯一性、分类性、多态性、封装性和模块独立性好。

所以本题答案为C。

5、下面不属于对象主要特征的是()。

A、对象唯一性B、对象依赖性C、对象继承性D、对象持久性正确答案:D答题解析:本题考查知识点是对象主要特征。

面向对象方法中最基本的概念是对象,它的基本特点有:唯一性、抽象性、继承性、多态性。

6、面向对象方法中,实现对象的数据和操作结合于统一体中的是()。

A、结合B、封装C、隐藏D、抽象正确答案:B答题解析:本题考查知识点是对象的基本特点。

面向对象方法学中的对象是由描述该对象属性的数据以及可以对这些数据施加的所有操作封装在一起构成的统一体。

所以本题答案为B。

7、将程序设计语言的整数设为整数类I,则下面属于类I实例的是()。

A、10.3B、10E3C、-103D、"0103"正确答案:C答题解析:本题考查知识点是面向对象基本概念。

全国软件专业人才设计与开发大赛软件大赛校内比赛C语言试题

全国软件专业人才设计与开发大赛软件大赛校内比赛C语言试题

“国信蓝点杯”全国软件大赛校内选拔赛C 语言程序设计试卷一、单项选择题1. C语言规定:在一个源程序中,main函数的位置( )。

A. 必须在最开始B. 必须在系统调用的库函数的后面C. 可以任意D. 必须在最后2. 下面四个选项中,均是合法浮点数的选项是( )。

A. +1e+1 5e-9.4 03e2B. -.60 12e-4 -8e5C. 123e 1.2e-.4 +2e-1D. -e3 .8e-4 5.e-03. 若a=-14,b=3,则条件表达式a<b? a:b+1的值为( ) 。

A. -14B. -13C. 3D. 44. 已知:int n,i=1,j=2;执行语句n=i<j?i++:j++;则i和j的值是( ).A. 1,2B. 1,3C. 2,2D. 2,35. 为了判断两个字符串s1和s2是否相等,应当使用( )A. if (s1==s2)B. if(s1=s2)C. if (strcmp(s1,s2))D. if (strcmp(s1,s2)==0)6. 以下正确的描述是( )。

A. 函数的定义可以嵌套,但函数的调用不可以嵌套。

B. 函数的定义不可以嵌套,但函数的调用可以嵌套。

C. 函数的定义和函数的调用均不可以嵌套。

D. 函数的定义和函数的调用均可以嵌套。

7. 在C语言中,下面对函数不正确的描述是( )。

A. 当用数组名作形参时,形参数组值的改变可以使实参数组之值相应改变。

B. 允许函数递归调用。

C. 函数形参的作用范围只是局限于所定义的函数内。

D. 子函数必须位于主函数之前。

8. 如果在一个函数中的复合语句中定义了一个变量,则以下正确的说法是( )。

A. 该变量只在该复合语句中有效B. 该变量在该函数中有效C. 该变量在本程序范围内均有效D. 该变量为非法变量9. 以下正确的函数形式是( )。

A. double fun(int x,int y) { z=x+y;return z;}B. fun(int x,y) { int z; return z;}C. fun(x,y) { int x,y; double z; z=x+y; return z;}D. double fun( int x,int y) {double z; z=x+y; return z; }10. 以下程序的输出结果是( )。

全国软件专业人才设计与开发大赛题目选拔试题及参考答案

全国软件专业人才设计与开发大赛题目选拔试题及参考答案

全国软件专业人才设计与开发大赛题目选拔试题一、基础篇(50分)1、单选(每题1分,10小题共10分)1). 执行下列程序中的输出语句后,x的值是____ _.main(){int x ;printf(“%d\n”,(x=5*6,x*2,x+20));}A)30 B)60 C)50 D)802). 在C语言中,下列选项属于合法的长整型常数的是_______.A)0L B)C)0. D)3.14159e33). 若有定义:int a,b;char x,y;并有以下输入数据:14 22 XxYy (回车)则能给a赋整数14,给b赋整数22,给x赋字符x,给y赋字符y的正确程序段是________.A)scanf(“%d %d”,&a,&b);x=getchar();y=getchar();B)scanf(“%d%d %c %c”,&a,&b,&x,&x,&y,&y);C)scanf(“%d %d %c%c%c %c”,&a,&b,&x,&x,&y,&y);D)scanf(“%d%d %c %c”,&a,&b,&x,&y);4). 当c的值不为0时,下列选项中能正确将c的值赋给变量a、b的是_______.A)c=b=a;B)(a=c)‖(b=c);C)(a=c)&&(b=c);D)a=c=b;5). 语句printf(“%d\n”,strlen(“asd\n\x12\1\\”));的输出结果是______.A)9 B)11 C)7 D)86). 下列程序的运行结果是________.main(){ int y=10;do { y- - ;} while(- -y);printf(“%d\n”,y- -);}A)-1 B)1 C)8 D)07). 阅读下面程序,该程序段的功能是_____.#include <stdio.h>main(){ int c[ ]={23,1,56,234,7,0,34},i,j,t;for(i=1;i<7;i++){ t=c[i];j=i-1;while(j>=0&&t>c[j]){ c[j+1]=c[j];j- - ;}c[j+1]=t;}for(i=0;i<7;i++)printf(“%d ”,c[i] );putchar('\n');}A)对数组元素的升序排列B)对数组元素的降序排列C)对数组元素的倒序排列D)对数组元素的随机排列8). 有如下程序:#define f(x)x*xmain(){ int i ;i=f(4+4)/(2+2);printf(“%d\n”,i);}该程序执行后的输出结果是_______.A)28 B)21 C)16 D)49). 下列程序的运行结果是_______.main(){ unsigned c1=0xff,c2=0x00;c1=c2|c1>>2;c2=c1^0236;printf(“%x,%x\n”,c1,c2);}A)0x3f,0XA1 B)3f,A1 C)ffff,61 D)3f,a110). 有以下程序:#include <stdio.h>main(){ FILE *fp;int i=20,j=30,k,n;fp=fopen(“d1.dat”,“w”);fprintf(fp,“%d\n”,i);fprintf(fp,“%d\n”,j);fclose(fp);fp=fopen(“d1.dat”,“r”);fscanf(fp,“%d%d”,&k,&n);printf(“%d %d\n”,k,n);fclose(fp);}该程序运行后的输出结果是_______.A)20 30 B)20 50 C)30 50 D)30 202、多选(每题2分,共10题,共20分,错选,漏选均不得分)1). 下列符号串中,不属于C语言合法标识符的有_____.A)_1_2_3 B)a-b-c C)int D)9cd2). 下列选项中,没有构成死循环的程序段有_____.A)int i=100;B)for(;;)while(1){ i=i0+1;if(i>=100)break;}C)int k=0;D)int s=36;do { ++k;} while(k>=0);while(s);——s;3). 下列判断正确的是_______.(知识点10.3)A)char *a=“china”;等价于char *a;*a=“china”;B)char str[6]={“china”};等价于char str[ ]= {“china”};C)char *s=“china”;等价于char *s;s=“china”;D)char c[4]=“abc”,d[4]=“abc”;等价于char c[4]=d[4]=“abc”;4). 设有如下定义:char *s[2]={“abcd”,“ABCD”};则下列说法正确的有_____.A)s数组元素的值分别是“abcd”和“ABCD”两个字符串的首地址B)s是指针数组名,它含有两个元素分别指向字符型一维数组C)s数组的两个元素分别存放的是含有四个字符的一维字符数组中的元素D)s数组的两个元素中分别存放了字符'a'和'A'的地址5). 若有以下说明:int a[5][9];则下列选项中对数组元素a[i][j]的引用错误的有_______.(0<=i<4,0<=j<9)A)*(&a[0][0]+9*i+j)B)*(a+i)(j)C)*(*(a+i)+j)D)*(a[i]+j)6). 若有定义:char *st=“how are you!”;下面程序段正确的有_____.(知识点:7.3)A)char a[11],*p;strcpy(p=a+1,&st[4]);B)char a[11];strcpy(++a,st);C)char a[11];strcpy(a,st);D)char a[ ],*p;strcpy(p=&a[1],st+2);7). 设有以下说明语句:Struct stu{ int a ;float b ;}stutype ;则下列叙述正确的有_______.A)struct是结构体类型的关键字B)struct stu是用户定义的结构体类型C)stutype是用户定义的结构体类型名D)a和b都是结构体成员名8). 设有定义语句:int x[6]={2,4,6,8,5,7},*p=x,i;要求依次输出x数组6个元素中的值,下列选项中能完成次操作的语句有_______.A)for(i=0;i<6;i++)printf(“-”,*(p++));B)for(i=0;i<6;i++)printf(“-”,*(p+i));C)for(i=0;i<6;i++)printf(“-”,*p++);D)for(i=0;i<6;i++)printf(“-”,(*p)++);9). 下列叙述正确的有_____.A)函数可以嵌套定义,但不能嵌套调用B)函数可以嵌套调用,也可以嵌套定义C)函数不可以嵌套定义,但可以递归调用D)函数可以嵌套调用,但不能嵌套定义10). 下列选项中可以将变量n清零的表达式有_______.A)n=n&~n B)n=n&0 C)n=n^n D)n=n|n3、程序填空(每空2分,共10空,共20分)1)、请补充函数fun(),该函数的功能是:把从主函数中输入的字符串str2接在字符串str1的后面。

2023年全国计算机等级考试二级软件工程真题及答案

2023年全国计算机等级考试二级软件工程真题及答案

2023年全国计算机等级考试二级软件工程真题及答案第一题题目:请简要说明软件工程的定义和重要性。

答案:软件工程是一门研究通过系统化的、规范化的、可量化的方法来开发和维护软件的学科。

它涉及到软件开发的所有方面,包括需求分析、设计、编码、测试、部署和维护等。

软件工程的重要性在于它可以提高软件开发的效率和质量,确保软件在开发过程中能够满足用户需求,并且能够持续发展和维护。

第二题题目:简述软件生命周期的各个阶段及其主要任务。

答案:软件生命周期包括需求分析、设计、编码、测试、部署和维护等阶段。

具体任务如下:- 需求分析:确定软件的功能和性能需求,并编写相应的需求规格说明书。

- 设计:根据需求规格说明书,设计软件的架构和组件之间的关系,并编写相应的设计文档。

- 编码:根据设计文档,实现软件的各个模块,并进行编码和调试。

- 测试:对编码完成的软件进行功能测试、性能测试和安全测试等,并记录测试结果和问题。

- 部署:将测试通过的软件部署到目标环境中,并进行相关配置和安装。

- 维护:在软件部署后,根据用户的反馈和需求变化,对软件进行修复和升级等维护工作。

第三题题目:请列举常见的软件开发过程模型,并简要描述各个模型的特点。

答案:常见的软件开发过程模型包括瀑布模型、迭代模型、螺旋模型和敏捷模型等。

- 瀑布模型:严格按照需求分析、设计、编码、测试和部署等流程顺序进行开发,适用于需求稳定且项目规模较小的情况。

- 迭代模型:按照瀑布模型的流程,但可以多次重复进行迭代,每次迭代都会生成一个可用的软件版本,适用于需求不稳定且需要快速交付的情况。

- 螺旋模型:结合瀑布模型和迭代模型的特点,通过循环迭代的方式不断推进需求分析、设计、构建和评估等活动,适用于大规模复杂项目和风险较高的情况。

- 敏捷模型:强调快速响应需求变化和高度合作的开发方式,通过短周期的迭代和交付,适用于需求变化频繁、项目规模不确定或需要灵活应对的情况。

以上是部分真题及答案,希望能对您的备考有所帮助。

全国计算机等级考试二级Java语言程序设计试题及答案(二)

全国计算机等级考试二级Java语言程序设计试题及答案(二)

一、选择题(每小题1分,共40小题,共40分)1.下列叙述中正确的是( )。

A.对长度为n的有序链表进行查找,最坏情况下需要的比较次数为nB.对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(n/Z)C.对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(log2n) D.对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(nlog2n)C。

【解析】二分法查找只适用于顺序存储的有序表,对于长度为n的有序线性表,最坏情况只需比较log2n次。

2.算法的时间复杂度是指( )。

A.算法的执行时间B.算法所处理的数据量C.算法程序中的语句或指令条数D.算法在执行过程中所需要的基本运算次数D。

【解析】算法的时间复杂度是指算法需要消耗的时间资源。

一般来说,计算机算法是问题规模n的函数f(n),算法的时间复杂度也因此记做T(n)=O(f(n))因此,问题的规模n越大,算法执行的时间的增长率与f(n)的增长率正相关,称作渐进时间复杂度(Asymptotic Time Cornplexity)。

简单来说就是算法在执行过程中所需要的基本运算次数。

3.软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件),下面属于系统软件的是( )。

A.编辑软件B.操作系统C.教务管理系统D.浏览器B。

【解析】编辑软件和浏览器属于工具软件,教务系统是应用软件。

4.软件(程序)调试的任务是( )。

A.诊断和改正程序中的错误B.尽可能多地发现程序中的错误C.发现并改正程序中的所有错误D.确定程序中错误的性质A。

【解析】调试的目的是发现错误或导致程序失效的错误原因,并修改程序以修正错误。

调试是测试之后的活动5.数据流程图(DFD图)是( )。

A.软件概要设计的工具B.软件详细设计的工具C.结构化方法的需求分析工具D.面向对象方法的需求分析工具C。

【解析】数据流程图是一种结构化分析描述模型,用来对系统的功能需求进行建模。

全国计算机等级考试二级Visual+Basic语言程序设计真题精选2(含答案)

全国计算机等级考试二级Visual+Basic语言程序设计真题精选2(含答案)

全国计算机等级考试二级Visual+Basic语言程序设计真题精选2一、单项选择题1.软件设计中模块划分应遵循的准则是()。

A.低内聚低耦合B.高内聚低耦合√C.低内聚高耦合D.高内聚高耦合解析:软件设计中,模块划分应遵循的准则是高内聚低耦合、模块大小规模适当、模块的依赖关系适当等。

模块的划分应遵循一定的准则,以保证模块划分合理,并进一步保证以此为依据开发出的软件系统可靠性高,易于理解和维护。

模块之间的耦合应尽可能地低,模块的内聚应尽可能地高。

2.栈和队列的共同点是()。

A.都是先进后出B.都是先进先出C.只允许在端点处插入和删除元素√D.没有共同点解析:栈和队列都是一种特殊的操作受限的线性表,只允许在端点处进行插入和删除。

二者的区别是:栈只允许在表的一端进行插入或删除操作,是一种“后进先出”的线性表;而队列只允许在表的一端进行插入操作,在另一端进行删除操作,是一种“先进先出”的线性表。

3.设窗体上有2个直线控件Line1和Line2,若使两条直线相连接,需满足的条件是()。

A.Line1.X1=Line2.X2且Line1.YI=Line2.Y2 √B.Line1.X1=Line2.Y1且Line1.Y1=Line2.X1C.Line1.X2=Line2.X1且Line1.Y1=Line2.Y2D.Line1.X2=Line2.X1且Line1.Y2=Line2.Y2解析:直线控件的X1、Y1和X2、Y2属性分别表示直线两个端点的坐标,即(X1,Y1)和(X2,Y2)。

如果要使两条直线相连,显然这两条直线的某一端点的坐标相同才行。

因此本题需要Line1.X1=Line2.X1且Line1.Y1=Line2.Y1,或Line1.X1=Line2.X2且Line1.Y1=Line2.Y2,或Line1.X2=Line2.X1且Line1.Y2=Line2.Y1,或Line1.X2=Line2.X2且Line1.Y2=Line2.Y2。

全国软件专业人才设计与开发大赛java集训试题及答案

全国软件专业人才设计与开发大赛java集训试题及答案

全国软件专业人才设计与开发大赛java集训试卷(附答案)(考试时间:150分钟考试总分:100分专业认证课程:JAVA程序设计)注意事项1、请首先按要求在试卷的标封处填写您的姓名、考号等;2、请仔细阅读各种题目的回答要求,在规定的位置填写您的答案;3、请保持试卷卷面的整洁,不要在标封区填写无关内容。

一、单项选择题(每题1分,共10分)1、下列叙述中,正确的是()A、Java语言的标识符是区分大小写的B、源文件名与public类名可以不相同C、源文件名其扩展名为.jarD、源文件中public类的数目不限2、在软件开发中,下面任务不属于设计阶段的是()A、数据结构设计B、给出系统模块结构C、定义模块算法D、定义需求并建立系统模型3、Java虚拟机的执行过程有多个特点,下列哪个特点不属于JVM执行特点?()A、多线程B、动态连接C、异常处理D、异步处理4、在关系数据库中,用来表示实体之间联系的是()A、树结构B、网状结构C、线性表D、二维表5、能够支持javadoc 命令的注释语句是()A、/**...//B、/*...*/C、//D、/**...*/6、在匹配器(Matcher)类中,用于输入字符串与模式串比较的方法是()A、static boolean matches()B、boolean matcher.find()C、int matcher.start()D、int matcher.end()7、给出下面程序段:if(x>0){System.out.println("Hello.")。

}else if(x>-3){System.out.println("Nice to meet you!")。

}else {System.out.println("How are you?")。

}若打印字符串“How are you?”,则x的取值范围是()A、x>0B、x>-3C、x<=-3D、x<=0&x>-38、编译并且执行以下代码,会出现什么情况?()public class Q{public static void main(String argv[]){int anar[]=new int[]{1,2,3}。

国家二级(JAVA)笔试模拟试卷83(题后含答案及解析)

国家二级(JAVA)笔试模拟试卷83(题后含答案及解析)

国家二级(JA V A)笔试模拟试卷83(题后含答案及解析)题型有:1. 选择题 2. 填空题选择题(每小题2分,共70分)下列各题A、B、C、D四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上。

1.软件详细设计的主要任务是( )。

A.确定每个模块的算法和使用的数据结构B.确定每个模块外部的接口C.确定每个模块的功能D.编程正确答案:A解析:本题考查结构化设计方法的详细设计。

从软件开发的工程化观点来看,在使用程序设计语言编制程序以前,需要对所采用算法的逻辑关系进行分析,设计出全部必要的过程细节,并给予清晰的表达。

详细设计的任务就是要确定各个模块的实现算法,并精确地表达这些算法。

2.某二叉树T有n个结点,设按某种顺序对T中的每个结点进行编号,编号值为1、2、…、n,且有如下性质:T中任一结点v,其编号等于左子树上的最小编号减1,而v的右子树的结点中,其最小编号等于v左子树上的最大编号加1。

此二叉树是按( )顺序编号的。

A.前序遍历B.中序遍历C.后序遍历D.按层次遍历正确答案:A解析:根据节点v的右子树的结点中,其最小编号等于v左子树上的结点的最大编号加1,可以断定是前序遍历。

3.对一个已经排好序的序列进行排序,采用( )比较适宜。

A.冒泡法B.直接选择法C.直接插入法D.归并法正确答案:C解析:若从排序所用的比较时间来看,直接插入法和归并法都比较少,对于N个元素的序列,大约需要比较N-1次;但归并法要占用较大的存储空间,所以用直接插入法比较好。

4.软件是一种( )。

A.程序B.数据C.逻辑产品D.物理产品正确答案:C解析:计算机软件是计算机系统中与硬件互相依存的另一部分,是程序、数据及相关文档的完整集合。

软件是一种逻辑实体,而不是物理实体,具有抽象性。

5.下列关于链式存储的叙述中错误的是( )。

A.链式存储结构的空间可以是不连续的B.数据节点的存储顺序与数据元素之间的逻辑关系可以不一致C.链式存储只可用于线性结构D.链式存储也可用于非线性结构正确答案:C解析:链式存储结构不同于顺序存储结构,它的存储空间可以是不连续的,并且数据节点的存储顺序与数据元素之间的逻辑关系可以不一致。

国家二级(JAVA)笔试模拟试卷106(题后含答案及解析)

国家二级(JAVA)笔试模拟试卷106(题后含答案及解析)

国家二级(JA V A)笔试模拟试卷106(题后含答案及解析)题型有:1. 选择题 2. 填空题选择题(每小题2分,共70分)下列各题A、B、C、D四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上。

1.从工程管理角度,软件设计一般分为两步完成,它们是( )。

A.概要设计与详细设计B.数据设计与接口设计C.软件结构设计与数据设计D.过程设计与数据设计正确答案:A2.下列叙述中正确的是( )。

A.线性链表是线性表的链式存储结构B.栈与队列是非线性结构C.双向链表是非线性结构D.只有根结点的二叉树是线性结构正确答案:A3.在设计程序时,应采纳的原则之一是( )。

A.不限制goto语句的使用B.减少或取消注释行C.程序越短越好D.程序结构应有助于读者理解正确答案:D4.编制一个好的程序首先要确保它的正确性和可靠性,还应强调良好的编程风格。

在选择标识符的名字时应考虑( )。

A.名字长度越短越好,以减少源程序的输入量B.多个变量共用一个名字,以减少变量名的数目C.选择含义明确的名字,以正确提示所代表的实体D.尽量用关键字作名字,以使名字标准化正确答案:C5.在数据库系统中,把具有以下两个特征的模型称为网状模型。

①允许有一个以上的结点没有双亲②有且仅有一个结点无双亲③根以外的结点有且仅有一个双亲④一个结点可以有多个双亲以下各项组合中符合题意的是( )。

A.①和③B.②和③C.①和④D.②和④正确答案:C6.软件开发离不开系统环境资源的支持,其中必要的测试数据属于( )。

A.硬件资源B.通信资源C.支持软件D.辅助资源正确答案:D7.下列叙述中正确的是( )。

A.一个算法的空间复杂度大,则其时间复杂度也必定大B.一个算法的空间复杂度大,则其时间复杂度必定小C.一个算法的时间复杂度大,则其空间复杂度必定小D.上述三种说法都不对正确答案:D8.在长度为64的有序线性表中进行/顷序查找,最坏情况下需要比较的次数为( )。

国家二级(JAVA)笔试模拟试卷180(题后含答案及解析)

国家二级(JAVA)笔试模拟试卷180(题后含答案及解析)

国家二级(JA V A)笔试模拟试卷180(题后含答案及解析)题型有:1. 选择题 2. 填空题选择题(每小题2分,共70分)下列各题A、B、C、D四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上。

1.树是结点的集合,它的根结点数目是______。

A.有且只有1B.1或多于lC.0或1D.至少2正确答案:A 涉及知识点:数据结构与算法2.应用数据库的主要目的是()。

A.解决数据保密问题B.解决数据完整性问题C.解决数据共享问题D.解决数据量大的问题正确答案:C解析:数据库中的数据具有“集成”与“共享”的特点,亦即是数据库集中了各种应用的数据,进行统一构造与存储,而使它们可以被不同应用程序所使用,故选项C正确。

3.在软件开发中,下面任务中不属于设计阶段的是()。

A.数据结构设计B.给出系统模块结构C.定义模块算法D.定义需求并建立系统模块正确答案:D解析:软件设计一般分为总体设计和详细设计两个阶段,总体设计的任务是确定软件的总体结构,子系统和模块的划分,并确定模块间的接口和评价模块划分质量,以及进行数据分析。

详细设计的任务是确定每一模块实现的定义,包括数据结构、算法和接口。

4.用树形结构来表示实体之间联系的模型称为()。

A.关系模型B.层次模型C.网状模型D.数据模型正确答案:B解析:层次模型的基本结构是树形结构,这种结构方式在现实世界中很普遍,如家谱、行政组织机构,它们自顶向下、层次分明。

5.下列叙述中正确的是()。

A.一个算法的空间复杂度大,则其时间复杂度也必定大B.一个算法的空间复杂度大,则其时间复杂度必定小C.一个算法的时间复杂度大,则其空间复杂度必定小D.上述三种说法都不对正确答案:D解析:算法的复杂度主要包括时间复杂度和空间复杂度。

算法在运行过程中需辅助存储空间的大小称为算法的空间复杂度;算法的时间复杂度是指执行算法所需要的计算工作量,即算法执行过程中所需要的基本运算次数。

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

第二届全国软件专业人才设计与开发大赛题一、基础篇(50分)1、单选(每题1分,10小题共10分)1、不能进行++和--运算的数据类型是()。

A) 指针B) double C) int D) long2、对于以下程序片段,描述正确的是()。

int x = -1;do{x = x * x;}while(!x);A)是死循环B)循环执行两次C)循环执行一次D)有语法错误3、下列对字符串的定义中,错误的是:()。

A) char str[7] = "FORTRAN";B) char str[] = "FORTRAN";C) char *str = "FORTRAN";D) char str[] = {'F','O','R','T','R','A','N', '\0'};4、二维数组a有m行n列,则在a[i][j]之前的元素个数为()。

A. j*n+iB. i*n+jC. i*n+j-1D. i*n+j+15、如果int i = 3, 则printf("%d", -i++ )的输出结果是(),i的值是()。

A) -3 4 B) -4 4C) -4 3 D) -3 36、要把整数67523赋与整型变量I,则应说明I的类型是()。

A)int B)long C)short D)unsigned7、若有二维数组定义语句:int a[3][4]; 则下面对元素a[i][j]不正确的引用方式是:()。

A) *(&a[i][j]) B) *(a+4*i+j)C) *(a[i]+j) D) *(*(a+i)+j)8、若a、b均为整数且a≠b,b≠0,则表达式a/b*b+a%b的值是()。

A)a B)bC)a被b除的余数部分D)a被b除商的整数部分9、以下程序是将一个整数存放到一个数组中,存放时按逆序存放,例如483存放成384请选择填空完善程序。

void convert(char *a,int n){ int i;if((i=n/10)!=0) convert( ,i);*a=n%10+'0';}char str[10]= " ";main(){ int number;scanf("%d",&number);convert(str,number);puts(str);}A)a++ B)a+1 C)a-- D)a-110、以下程序的功能是()。

#include <stdio.h>main(){ FILE *fp;long int n;fp=fopen("wj.txt","rb");fseek(fp,0,SEEK_END);n=ftell(fp);fclose(fp);printf("%ld",n);}A)计算文件wj.txt的起始地址B)计算文件wj.txt的终止地址C)计算文件wj.txt的长度D)将文件指针定位到文件末尾2、多选(每题2分,共10题,共20分,错选,漏选均不得分)1).下列符号串中,不属于C语言合法标识符的有_____.A)_1_2_3 B)a-b-c C)int D)9cd2).下列选项中,没有构成死循环的程序段有_____.A)int i=100; B)for(;;)while(1){ i=i%100+1;if(i>=100)break;}C)int k=0; D)int s=36;do { ++k;} while(k>=0); while(s);——s;3).下列判断正确的是_______.(知识点10.3)A)char *a=“china”;等价于char *a;*a=“china”;B)char str[6]={“china”};等价于char str[ ]= {“china”};C)char *s=“china”;等价于char *s;s=“china”;D)char c[4]=“abc”,d[4]=“abc”;等价于char c[4]=d[4]=“abc”;4).设有如下定义:char *s[2]={“abcd”,“ABCD”};则下列说法正确的有_____.A)s数组元素的值分别是“abcd”和“ABCD”两个字符串的首地址B)s是指针数组名,它含有两个元素分别指向字符型一维数组C)s数组的两个元素分别存放的是含有四个字符的一维字符数组中的元素D)s数组的两个元素中分别存放了字符'a'和'A'的地址5).若有以下说明:int a[5][9];则下列选项中对数组元素a[i][j]的引用错误的有_______.(0<=i<4,0<=j<9)A)*(&a[0][0]+9*i+j)B)*(a+i)(j)C)*(*(a+i)+j)D)*(a[i]+j)6).若有定义:char *st=“ho w are you!”;下面程序段正确的有_____.(知识点:7.3)A)char a[11],*p;strcpy(p=a+1,&st[4]);B)char a[11];strcpy(++a,st);C)char a[11];strcpy(a,st);D)char a[ ],*p;strcpy(p=&a[1],st+2);7).设有以下说明语句:Struct stu{ int a;float b;}stutype;则下列叙述正确的有_______.A)struct是结构体类型的关键字B)struct stu是用户定义的结构体类型C)stutype是用户定义的结构体类型名D)a和b都是结构体成员名8).设有定义语句:int x[6]={2,4,6,8,5,7},*p=x,i;要求依次输出x数组6个元素中的值,下列选项中能完成次操作的语句有_______.A)for(i=0;i<6;i++)printf(“%2d”,*(p++));B)for(i=0;i<6;i++)printf(“%2d”,*(p+i));C)for(i=0;i<6;i++)printf(“%2d”,*p++);D)for(i=0;i<6;i++)printf(“%2d”,(*p)++);9).下列叙述正确的有_____.A)函数可以嵌套定义,但不能嵌套调用B)函数可以嵌套调用,也可以嵌套定义C)函数不可以嵌套定义,但可以递归调用D)函数可以嵌套调用,但不能嵌套定义10).下列选项中可以将变量n清零的表达式有_______.A)n=n&~n B)n=n&0 C)n=n^n D)n=n|n3、程序填空(每空2分,共10空,共20分)1、输入一个字符数小于100的字符串string,然后将string所保存字符串中的每个字符之间加一个空格。

#include "stdio.h"#define MAX 100(1)void Insert(char s[]);main(){char string[MAX];scanf("%s",string);Insert(string);printf("%s",string);}void CopyString(char c[], char s[]){int i;for (i=0; s[i]!='\0'; i++){c[i] = s[i];}(2) ;}void Insert(char srcStr[]){char strTemp[MAX];int i = 0, j = 0;CopyString(strTemp, srcStr);while ( (3) ){srcStr[i] = strTemp[j];i++;(4) ;srcStr[i] = ' ';i++;}srcStr[i] = '\0';}2、下面程序的功能是删除字符串s中所出现的与变量c相同的字符。

#include "stdio.h"void Squeeze(char s[], char c);main(){char s[80],c;gets(s);scanf("%c",&c);Squeeze(s, c);puts(s);}void Squeeze(char s[], char c){(5) ;for(i = 0; s[i] != '\0'; i++){if( (6) ){s[j] = s[i];(7) ;}}s[j] = '\0';}3、以下程序的功能是:将无符号八进制数字构成的字符串转换为十进制整数。

例如,输入的字符串为:456,则输出十进制整数302。

请填空。

#include <stdio.h>main(){char *p, s[6];int m=0,n;p=s;gets(p);n= (8) ;while( (9) !='\0'){n=m*8+*p-'0'; (10) ;p++;}printf("%d \n",n);}二、智力题(30分)1、单选题:(每小题4分,5小题,共20分)1)给你8颗小石头和一架托盘天平。

有7颗石头的重量是一样,另外一颗比其它石头略重,除此之外,这些石头完全没有分别。

你不得假设那颗石头到底比其它的石头重了多少。

请问:最少要称量几次,你才能把那颗较重的石头找出来?A 1次B 2次C 3次D 4次2)一个人花8块钱买了一只鸡,9块钱卖掉了,然后他觉得不划算,花10块钱又买回来了,11块卖给另外一个人。

问他赚了多少?A 1块B 2块C 3块D 4块3) 1块钱一瓶汽水,喝完后两个空瓶换一瓶汽水。

问:你有20块钱,最多可以喝到几瓶汽水?A 37瓶B 38瓶C 39瓶D 40瓶4)有一牧场,已知养牛27头,6天把草吃尽;养牛23头,9天把草吃尽。

如果养牛21头,那么几天能把牧场上的草吃尽呢?并且牧场上的草是不断生长的。

A 12天B 13天C 14天D 15天5)有四个人要在深夜通过一座桥。

这座桥最多只能承受两个人的重量,而且必须打着手电筒才能通过。

四个人只有一把手电筒,并且每个人的行走速度也不一样:第一个人通过这座桥要花1分钟,第二个人要花2分钟,第三个人要花5分钟,第四个人要花10分钟;如果两人同行,他们就只能以比较慢的那个人的速度前进。

相关文档
最新文档