计算机二级《C语言》上机操作试题及答案

合集下载

计算机二级C语言考试上机试题及答案

计算机二级C语言考试上机试题及答案

xx年计算机二级C语言考试上机试题及答案1.算法的空间复杂度是指( )。

A.算法程序的长度B.算法程序中=的指令条数C.算法程序所占的存储空间D.算法执行过程中所需要的存储空间2.以下表达中正确的选项是( )。

A.一个逻辑数据构造只能有一种存储构造B.逻辑构造属于线性构造,存储构造属于非线性构造C.一个逻辑数据构造可以有多种存储构造,且各种存储构造不影响数据处理的效率D.一个逻辑数据构造可以有多种存储构造,且各种存储构造影响数据处理的效率3.简单的交换排序方法是( )。

A.快速排序B.选择排序C.堆排序D.冒泡排序4.关于构造化程序设计原那么和方法的描述错误的选项是( )。

A.选用的构造只准许有一个入口和一个出口B.复杂构造应该用嵌套的根本控制构造进展组合嵌套来实现C.不允许使用GOT0语句D.语言中假设没有控制构造,应该采用前后一致的方法来模拟5.相对于数据库系统,文件系统的主要缺陷有数据关联差、数据不一致性和( )。

A.可重用性差B.平安性差C.非持久性D.冗余性6.面向对象的设计方法与传统的面向过程的方法有本质不同,它的根本原理是( )。

A.模拟现实世界中不同事物之间的联系B.强调模拟现实世界中的算法而不强调概念C.使用现实世界的概念抽象地思考问题从而自然地解决问题D.不强调模拟现实世界中的算法而强调概念7.对如下二叉树进展后序遍历的结果为( )。

A.ABCDEFB.DBEAFCC.ABDECFD.DEBFCA8.软件设计包括软件的构造、数据接口和过程设计,其中软件的过程设计是指( )。

A.模块间的关系B.系统构造部件转换成软件的过程描述C.软件层次构造D.软件开发过程9.两个或两个以上模块之间关联的严密程度称为( )。

A.耦合度B.内聚度C.复杂度D.数据传输特性10.以下描述错误的选项是( )。

A.继承分为多重继承和单继承B.对象之间的通信靠传递消息来实现C.在外面看不到对象的内部特征是基于对象的“模块独立性好”这个特征D.类是具有共同属性、共同方法的对象的集合11.数据库DB、数据库系统DBS、数据库管理系统DBMS之间的关系是( )。

计算机二级C上机考试题库及答案

计算机二级C上机考试题库及答案

计算机二级C上机考试题库及答案一、单项选择题(每题1分,共10分)1. 在C语言中,以下哪个选项是正确的字符串定义方式?A. char str[] = "Hello, World!";B. char str[] = {'H', 'e', 'l', 'l', 'o', ',', ' ', 'W', 'o', 'r', 'l', 'd', '!', '\0'};C. char str[] = {"Hello, World!"};D. char str[] = "Hello, World!";答案:A2. 下列哪个函数用于将字符串s1复制到s2中?A. strcat(s1, s2);B. strcpy(s1, s2);C. strcmp(s1, s2);D. strncpy(s1, s2, n);答案:B3. 在C语言中,以下哪个关键字用于声明一个函数?A. intB. voidC. returnD. function答案:A4. 如果一个变量被声明为static int,那么这个变量的生命周期是?A. 只在函数调用期间B. 程序运行期间C. 只在程序启动时D. 只在程序结束时答案:B5. 在C语言中,以下哪个运算符用于计算两个整数的差?A. +B. -C. *D. /答案:B6. 以下哪个选项不是C语言中合法的标识符?A. _myVarB. my_varC. 2ndVarD. var$name答案:C7. 在C语言中,以下哪个选项是正确的数组定义方式?A. int arr[5] = {1, 2, 3, 4, 5};B. int arr[] = {1, 2, 3, 4, 5};C. int arr[5] = {1, 2, 3};D. int arr[] = {1, 2, 3, 4};答案:A8. 以下哪个选项是正确的C语言注释方式?A. /* This is a comment */B. // This is a commentC. //* This is a commentD. /* This is a comment */答案:A9. 在C语言中,以下哪个选项是正确的多行字符串定义方式?A. char str[] = "Line1\nLine2";B. char str[] = 'Line1\nLine2';C. char str[] = "Line1\nLine2";D. char str[] = "Line1\nLine2";答案:A10. 在C语言中,以下哪个选项是正确的结构体定义方式?A. struct Student {int id;char name[50];};B. struct Student {int id;char name[];};C. struct Student {int id;char name[50] = "John Doe";};D. struct Student {int id;char name[];};答案:A二、填空题(每题2分,共20分)1. 在C语言中,使用________运算符可以对变量进行自增操作。

计算机二级《C语言》上机操作试题及答案

计算机二级《C语言》上机操作试题及答案

计算机二级《C语言》上机操作试题及答案计算机二级考试是全国计算机等级考试,四个等级中的一个等级,由教育部考试中心主办,考核计算机基础知识和使用一种高级计算机语言编写程序以及上机调试的基本技能。

下面是店铺收集整理的计算机二级《C语言》上机操作试题及答案,仅供参考,希望能够帮助到大家。

(1)一个栈的初始状态为空。

现将元素1、2、3、4、5、A、B、c、D、E依次入栈,然后再依次出栈,则元素出棱的顺序是( )。

A.12345ABCDEB.EDCBA54321C.ABCDEl2345D.54321EDCBA(2)下列叙述中正确的是( )。

A.循环队列有队头和队尾两个指针,因此,循环队列是非线性结构B.在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况C.在循环队列中,只需要队尾指针就能反映队列中元素的动态变化情况D.循环队列中元素的个数是由队头指针和队尾指针共同决定的'(3)在长度为n的有序线性表中进行二分查找,最坏情况下需要比较的次数是( )。

A.0(n)B.D(n2)C.O(1092n)D.0(nl092n)(4)下列叙述中正确的是( )。

A.顺序存储结构的存储一定是连续的,链式存储结构的存储空间不一定是连续的B.顺序存储结构只针对线性结构,链式存储结构只针对非线性结构C.顺序存储结构能存储有序表,链式存储结构不能存储有序表D.链式存储结构比顺序存储结构节省存储空间(5)数据流图中带有箭头的线段表示的是( )。

A.控制流B.事件驱动C.模块调用D.数据流(6)在软件开发中,需求分析阶段可以使用的工具是( )。

A.N—s图B.DFD图C.PAD图D.程序流程图(7)在面向对象方法中,不属于“对象”基本特点的是( )。

A.一致性B.分类性C.多态性D.标识唯一性(8)一间宿舍可住多个学生,则实体宿舍和学生之间的联系是( )。

A.一对一B.一对多C.多对一D.多对多(9)在数据管理技术发展的三个阶段中,数据共享最好的是( )。

计算机二级C上机考试题库及答案

计算机二级C上机考试题库及答案

计算机二级C上机考试题库及答案在计算机二级C语言上机考试中,考生需要掌握C语言的基本语法、数据结构、算法设计等知识。

以下是一套模拟题库及答案,供考生参考和练习。

1. 题目:以下哪个选项是C语言中的合法标识符?A. 2variableB. variable2C. variable-2D. variable$2答案:B解析:在C语言中,标识符可以由字母、数字和下划线组成,且不能以数字开头。

因此,只有选项B中的"variable2"是合法的标识符。

2. 题目:以下哪个选项是C语言中的整型常量?A. 0x1AB. 1.2E3C. 0.5D. 1.2答案:A解析:整型常量可以是十进制、八进制或十六进制的整数。

选项A中的"0x1A"是十六进制的整型常量,而选项B、C和D都是浮点型常量。

3. 题目:以下哪个选项是C语言中的字符串字面量?A. "Hello World"B. 'Hello World'C. "Hello" "World"D. 'H' "ello" 'W' "orld"答案:A解析:字符串字面量是由双引号括起来的字符序列。

选项A中的"Hello World"是一个合法的字符串字面量。

选项B是字符字面量,选项C和D的组合方式在C语言中不合法。

4. 题目:以下哪个选项是C语言中的合法数组声明?A. int a[5] = {1, 2, 3, 4, 5};B. int b[] = {1, 2, 3, 4, 5};C. int c[5] = {1, 2, 3};D. int d[];答案:A解析:在C语言中,数组的声明需要指定数组的大小,除非数组作为函数的参数。

选项A正确地声明了一个大小为5的整型数组,并初始化了它的元素。

计算机二级c 上机考试题库80题答案

计算机二级c  上机考试题库80题答案

第1套一、填空题给定程序的功能是求1/4的圆周长。

函数通过形参得到圆的直径,函数返回1/4的圆周长(圆周长公式为:L=Πd,在程序中定义的变量名要与公式的变量相同)。

例如:输入圆的直径值:19.527,输出为:15.336457请勿改动主函数main与其他函数中的任何内容,仅在横线上填写所需的若干表达式或语句。

#include<stdio.h>double fun(double d){return 3.14159*d/4.0;}main(){double z;printf("Input the d of the round:");scanf("%lf",&z);printf("L=%lf\n",fun(z));}二、改错题下列给定程序中函数fun的功能是:计算正整数m的各位上的数字之积。

例如,若输入202,则输出应该是0。

请修改程序中的错误,得出正确的结果注意:不要改动main函数,不能增行或删行,也不能更改程序的结构#include<stdio.h>#include<conio.h>long fun(long n){long r=1;do{r*=n%10;n/=10;}while(n);return(r);}main(){long m;printf("\nplease enter a number:");scanf("%ld",&m);printf("\n%ld\n",fun(m));}三、编程题请编写一个函数fun,它的功能是:求出1到m之内(含m)能被7或11整初的所有整数放在数组b中,通过n返回这些数的个数。

例如,若传送给m的值为20,则程序输出7 11 14。

请勿改动主函数main与其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。

二级C语言上机真题及答案(最新完整版)

二级C语言上机真题及答案(最新完整版)

1.m个人的成绩存放在score数组中,请编写函数fun,它的功能是:将低于平均分的人作为函数值1.int fun(int score[],int m,int below[]){int i,k=0,aver=0;for(i-0;i<m;i++)aver+=score[i];aver/=m;for(i=0,i<m;i++)if(score[i]<aver){below[k]=score[i];k++;}return k;}2.请编写函数fun,它的功能是:求出1到100之内能北7或者11整除,但不能同时北7和11整除的所有证书2.void fun(int *a,int *n){int i,j=0;for(i=2;i<1000;i++)if((i%7==0//i%11==0))&i%77!=0)a[j++]=i;*n=j;}3.请编写函数void fun(int x,int pp[],int *n),它的功能是:求出能整除x且不是偶数的各整数,并按3. void fun(int x, int pp[],int *n){int i=1,j=0,k=0,*t=pp;for(i=0;i<=x;i++)if(i%2!=0){t[j]=i;j++;}for(i=0;i<j;i++)if(x%t[i]==0){pp[k]=t[i];k++;}*n=k;}4.请编写一个函数void fun(char *tt,int pp[]),统计在tt字符中"a"到"z"26各字母各自出现的次数,4. void fun(char *tt,int pp[]){int i;for(i=0;i<26;i++)pp[i]=0;while (*tt){switch(*tt){case'a':pp[0]++;break;case'b':pp[1]++;break;case'c':pp[2]++;break;case'd':pp[3]++;break;case'e':pp[4]++;break;case'f':pp[5]++;break;case'g':pp[6]++;break;case'h':pp[7]++;break;case'i':pp[8]++;break;case'j':pp[9]++;break;case'k':pp[10]++;break;case'l':pp[11]++;break;case'm':pp[12]++;break;case'n':pp[13]++;break;case'o':pp[14]++;break;case'p':pp[15]++;break;case'q':pp[16]++;break;case'r':pp[17]++;break;case's':pp[18]++;break;case't':pp[19]++;break;case'u':pp[20]++;break;case'v':pp[21]++;break;case'w':pp[22]++;break;case'x':pp[23]++;break;case'y':pp[24]++;break;case'z':pp[25]++;break;}tt++;}}5.请编写一个函数void fun(int m,int k,int xx[]),该函数的功能是:将大于整数m且紧靠m的k各素数5. void fun(int m,int k,int xx[]){int g=0,i,j,flag=1;for(i=m+1;i<m*m;i++){for(j=2;j<i;j++){if (i%j!=0)flag=1;else{flag=0;break;}}if (flag==1&j>=i){if (k>0){xx[g++]=i;k--;}elsebreak;}}}6.请编写一个函数void fun(char a[],char[],int n),其功能是:删除以各字符串中指定下标的字符。

计算机二级C语言99套上机操作题及答案

计算机二级C语言99套上机操作题及答案

C语言上机操作题.第1套填空题请补充FUN函数,FUN函数的功能是求10的阶乘。

注意:部分源程序给出如下。

请勿改动主函数main和其他函数中的任何内容,仅在fun函数的横线上填入所编写的若干表达式或语句。

试题程序:#include <stdio.h>long fun(int n){if (___1___)return (n*fun(___2___));return ___3___;}main(){p rintf("10!=%ld\n", fun(10));}第1处填空:n>1或1<n第2处填空:n-1第3处填空:1或11或1L改错题下列给定程序的功能是:读入一个整数K(2〈=K〈=10000),打印它的所有因子(即所有为素数的因子)。

例如,若输入整数2310,则应输出:2、3、5、7、11。

请改正程序中的错误,使程序能得出正确的结果。

注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!试题程序:#include <conio.h>#include <stdio.h>/********found********/IsPrime(int n);{int i, m;m = 1;/********found********/for (i=2; i<n; i++)if !(n%i){m = 0;break;}return(m);}main(){int j, k;printf("\nplease enter an integer number between 2 and 10000:");scanf("%d", &k);printf("\n\nThe prime factor(s) of %d is(are):", k);for (j=2; j<k; j++)if ((!(k%j)) && (IsPrime(j)))printf(" %4d,", j);printf("\n");}第1处:Isprime(int n);应改为Isprime(int n)第2处:if !(n%i)应该为if(!(n%i))编程题M个人的成绩存放在score数组中,请编写函数fun,它的功能是:返回低于平均分的认输,并将低于平均分的分数放在below所指的数组中。

计算机二级C语言上机题库及答案(100套)

计算机二级C语言上机题库及答案(100套)

~计算机二级c 语言上机题库及答案内部资料,切勿外传!.第1 套填空题请补充FUN 函数,FUN 函数的功能是求10 的阶乘。

注意:部分源程序给出如下。

请勿改动主函数main 和其他函数中的任何内容,仅在fun 函数的横线上填入所编写的若干表达式或语句。

试题程序:#include <stdio.h>long fun(int n){if ( 1 )return (n*fun( 2 ));return 3 ;}main(){printf("10!=%ld\n", fun(10));}第1 处填空:n>1 或1<n第2 处填空:n-1第3 处填空:1 或11 或1L改错题下列给定程序的功能是:读入一个整数K(2〈=K〈=10000),打印它的所有因子(即所有为素数的因子)。

例如,若输入整数2310,则应输出:2、3、5、7、11。

请改正程序中的错误,使程序能得出正确的结果。

注意:不要改动main 函数,不得增行或删行,也不得更改程序的结构!试题程序:#include <conio.h>#include <stdio.h>/********found********/IsPrime(int n);{int i, m;m = 1;/********found********/for (i=2; i<n; i++)if !(n%i){m = 0;break;}return(m);}main(){int j, k;printf("\nplease enter an integer number between 2and 10000:");scanf("%d", &k);printf("\n\nThe prime factor(s) of %d is(are):", k);for (j=2; j<k; j++)if ((!(k%j)) && (IsPrime(j)))printf(" %4d,", j);printf("\n");}第1 处:Isprime(int n);应改为Isprime(int n)第2 处:if !(n%i)应该为if(!(n%i))编程题M 个人的成绩存放在score 数组中,请编写函数fun,它的功能是:返回低于平均分的认输,并将低于平均分的分数放在below 所指的数组中。

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

计算机二级《C语言》上机操作试题及答案
计算机二级《C语言》上机操作试题及答案
计算机二级考试是全国计算机等级考试,四个等级中的一个等级,由教育部考试中心主办,考核计算机基础知识和使用一种高级计算机语言编写程序以及上机调试的基本技能。

下面是店铺收集整理的计算机二级《C语言》上机操作试题及答案,仅供参考,希望能够帮助到大家。

(1)一个栈的初始状态为空。

现将元素1、2、3、4、5、A、B、c、
D、E依次入栈,然后再依次出栈,则元素出棱的顺序是( )。

A.12345ABCDE
B.EDCBA54321
C.ABCDEl2345
D.54321EDCBA
(2)下列叙述中正确的是( )。

A.循环队列有队头和队尾两个指针,因此,循环队列是非线性结构
B.在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况
C.在循环队列中,只需要队尾指针就能反映队列中元素的动态变化情况
D.循环队列中元素的个数是由队头指针和队尾指针共同决定的
(3)在长度为n的有序线性表中进行二分查找,最坏情况下需要比较的次数是( )。

A.0(n)
B.D(n2)
C.O(1092n)
D.0(nl092n)
(4)下列叙述中正确的是( )。

A.顺序存储结构的存储一定是连续的,链式存储结构的存储空间
不一定是连续的
B.顺序存储结构只针对线性结构,链式存储结构只针对非线性结构
C.顺序存储结构能存储有序表,链式存储结构不能存储有序表
D.链式存储结构比顺序存储结构节省存储空间
(5)数据流图中带有箭头的线段表示的是( )。

A.控制流
B.事件驱动
C.模块调用
D.数据流
(6)在软件开发中,需求分析阶段可以使用的工具是( )。

A.N—s图
B.DFD图
C.PAD图
D.程序流程图
(7)在面向对象方法中,不属于“对象”基本特点的是( )。

A.一致性
B.分类性
C.多态性
D.标识唯一性
(8)一间宿舍可住多个学生,则实体宿舍和学生之间的联系是( )。

A.一对一
B.一对多
C.多对一
D.多对多
(9)在数据管理技术发展的三个阶段中,数据共享最好的是( )。

A.人工管理阶段
B.文件系统阶段
C.数据库系统阶段
D.三个阶段相同
(10)设有定义:int X=2;,以下表达式中,值不为6的是( )。

A.2*x.x+=2
B.x++,2*x
C.x*=(1+x)
D.x*!x+1
(11)下列叙述中错误的是( )。

A.C程序可以由多个程序文件组成
B.一个c语言程序只能实现一种算法
C.c程序可以由一个或多个函数组成,
D.一个C函数可以单独作为一个C程序文件存在(12)以下选项中,能用作数据常量的是( )。

A.115L
B.0118
C.1.5el.5
D.0115
(13)按照c语言规定的用户标识符命名规则,不能出现在标识符中的是( )。

A.大写字母
B.下划线
C.数字字符
D.连接符
(14)设变量已正确定义并赋值,以下正确的表达式是( )。

A.X=Y+z+5,++Y
B.int(15.8%5)
C.X=Y*5=X+Z
D.X=25%5.0
参考答案与解析
(1)B
【解析】栈是先进后出的原则组织数据,所以人栈最早的最后出
栈,所以选择B。

(2)D
【解析】循环队列有队头和队尾两个指针,但是循环队列仍是线性结构的,所以A错误;在循环队列中只需要队头指针与队尾两个指针来共同反映队列中元素的动态变化情况,所以B与C错误。

(3)C
【解析】当有序线性表为顺序存储时才能用二分法查找。

可以证明的是对于长度为n的有序线性表,在最坏情况下,二分法查找只需要比较l092n次,而顺序查找需要比较n次。

(4)A
【解析】链式存储结构既可以针对线性结构也可以针对非线性结构,所以B与C错误。

链式存储结构中每个结点都由数据域与指针域两部分组成,增加了存储空间,所以D错误。

(5)D
【解析】数据流图中带箭头的线段表示的是数据流,即沿箭头方向传送数据的通道,一般在旁边标注数据流名。

(6)B
【解析】在需求分析阶段可以使用的`工具有数据
流图(DFD图),数据字典(DD),判定树与判定表,所以选择B。

(7)A
【解析】对象有如下一些基本特点:标识唯一性、分类性、多态性、封装性、模块独立性好。

所以选择A。

(8)B
【解析】因为一间宿舍可以住多个学生即多个学生住在一个宿舍中,但一个学生只能住一间宿舍,所以实体宿舍和学生之间是一对多的关系。

(9)C
【解析】数据管理发展至今已经历了三个阶段:人工管理阶段、文件系统阶段和数据库系统阶段。

其中最后一个阶段结构简单,使用方便逻辑性强物理性少,在各方面的表现都最好,一直占据数据库领
域的主导地位,所以选择C。

(10)A
【解析】A选项中逗号表达式先计算第一表达式2*x,然后计算表达式x+=2的值,即x=x+2即4,整个逗号表达式为第二个表达式的值4,所以选择A。

B选项中首先计算逗号表达式中第一表达式x++,此时x为3,在执行第二个表达式2·X=2*3=6,所以逗号表达式为第二个表达式的值6。

C选项的赋值表达式可以表示为x=x *(1+x)=2}(1+2)=6。

D选项中的表达式可以表示为x=X}(x+1)=2·3=60
(11)B
【解析】在一个C语言程序中可以进行多种算法的实现,对算法的个数没有规定,所以B错误。

(12)A
【解析】A选项中l15L表示ll5是长整型数据,合法。

B选项是八进制常量的表示方法,但是在八进制中不能含有数字8,所以B错误。

c选项中e后面应该是整数不能是小数l.5,所以c错误。

D选项中八进制常量应该是数字…0开始,而不是字母…O开始。

(13)D
【解析】C语言中标识符由字母、下划线、数字组成,且开头必须是字母或下划线。

所以D选项中的连接符不合法。

(14)A
【解析】8与D选项中取模运算符%的左右两个操作数均应为整数,所以B、D错误。

c选项中不能将X+Y的值赋给表达式Y*5,所以c错误。

【计算机二级《C语言》上机操作试题及答案】。

相关文档
最新文档