2017年计算机基础知识和应用能力等级考试上机试卷1二级 C++ 语言

合集下载

2017年全国计算机等级考试C语言上机考试题库 -1-20套资料

2017年全国计算机等级考试C语言上机考试题库 -1-20套资料

2017年全国计算机等级考试C语言上机考试题库学生练习用第一套至第二十套第一套:1、程序填空程序通过定义学生结构体变量,存储了学生的学号、姓名和三门课的成绩。

所有学生数据均以二进制方式输出到文件中。

函数fun的功能是重写形参filename 所指文件中最后一个学生的数据,即用新的学生数据覆盖该学生原来的数据,其他学生的数据不变。

请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。

注意:部分源程序在文件BLANK1.C中。

不得增行或删行,也不得更改程序的结构!-----------------------------------------------------------------------------------------------------------------#include <stdio.h>#define N 5typedef struct student {long sno;char name[10];float score[3];} STU;void fun(char *filename, STU n){ FILE *fp;/**********found**********/fp = fopen(__1__, "rb+");/**********found**********/fseek(__2__, -(long)sizeof(STU), SEEK_END);/**********found**********/fwrite(&n, sizeof(STU), 1, __3__);fclose(fp);}main(){ STU t[N]={ {10001,"MaChao", 91, 92, 77}, {10002,"CaoKai", 75, 60, 88},{10003,"LiSi", 85, 70, 78}, {10004,"FangFang", 90, 82, 87},{10005,"ZhangSan", 95, 80, 88}};STU n={10006,"ZhaoSi", 55, 70, 68}, ss[N];int i,j; FILE *fp;fp = fopen("student.dat", "wb");fwrite(t, sizeof(STU), N, fp);fclose(fp);fp = fopen("student.dat", "rb");fread(ss, sizeof(STU), N, fp);fclose(fp);printf("\nThe original data :\n\n");for (j=0; j<N; j++){ printf("\nNo: %ld Name: %-8s Scores: ",ss[j].sno, ss[j].name);for (i=0; i<3; i++) printf("%6.2f ", ss[j].score[i]);printf("\n");}fun("student.dat", n);printf("\nThe data after modifing :\n\n");fp = fopen("student.dat", "rb");fread(ss, sizeof(STU), N, fp);fclose(fp);for (j=0; j<N; j++){ printf("\nNo: %ld Name: %-8s Scores: ",ss[j].sno, ss[j].name);for (i=0; i<3; i++) printf("%6.2f ", ss[j].score[i]);printf("\n");}}-----------------------------------------------------------------------------------------------------------------【参考答案】(1)filename (2)fp (3)fp【解题思路】填空1:本空是对文本文件的打开,filename所指的文件中的最后数据要进行重写,因此首先是要打开,因而本空填写filename。

计算机二级考试C语言上机试题(100题)

计算机二级考试C语言上机试题(100题)

1.程序填空题在主函数中从键盘输入若干个数放入数组a中,用0结束输入但不计入数组。

下列给定程序中,函数fun的功能是:输出数组元素中小于平均值的元素。

例如,数组中元素的值依次为34、54、675、456、453、121,则程序的运行结果为34、54、121。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。

注意:不得增行或删行,也不得更改程序的结构!#include <conio.h>#include <stdio.h>void fun(___1___,int n){double count=0.0;double average=0.0;int i=0;for(i=0;i<n;i++)___2___;average=___3___;for(i=0;i<n;i++)if(a[i]<average){if(i%5==0)printf("\n");printf("%d,",a[i]);}}main(){int a[1000];int i=0;printf("\nPlease enter datas(end with 0):");do{scanf("%d",&a[i]);}while(a[i++]!=0);fun(a,i-1);}【答案】(1) int a[] (2)count+=a[i]或count=count+a[i] (3)count/n2.程序修改题给定程序中,函数fun的功能是:根据整型形参m,计算如下公式的值:y=1+1/(2*2)+1/(3*3)+1/(4*4)+…+1/(m*m)例如:若m中的值为5,则应输出1.463611。

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

注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!#include <stdio.h>double fun(int m){double y=1.0;int I;/**********found**********/for(i=2;i<m;i++)/**********found**********/y+=1/(i*i);return(y);}main(){int n=5;printf("\nThe result is %lf\n", fun(n));}【答案】(1)将for(i=2;i<m;i++) 改为:for(i=2;i<=m;i++)(2)将y+=1/(i*i); 改为:y +=1.0/(i*i);3.程序设计题函数fun的功能是:将s所指字符串中除了下标为偶数、同时ASCII值也为偶数的字符外,其余的全都删除;串中剩余字符所形成的一个新串放在t所指的数组中。

最新精品2 017年9月计算机等考二级C语言真题及答案

最新精品2 017年9月计算机等考二级C语言真题及答案

五、单项选择题(计算机常识及应用。

在每小题列出的四个备选项中只有一个是正确的,请将正确项的代码填写在题干的括号内。

每小题1分,共20分。

)1 .计算机系统由()组成。

A.主机和系统软件B.硬件系统和应用软件C.硬件系统和软件系统D.微处理器和软件系统2.通常,在微机中标明的P4或奔腾4是指()A.产品型号B.主频C.微机名称D.微处理器型号3.Windows2000操作系统的主要功能是()A.控制和管理系统资源的使用B.实现软硬件的转接C.管理计算机的硬件设备D.把源程序译成目标程序4.计算机中,一个浮点数由两部分组成,它们是()A.阶码和尾数B.基数和尾数C.阶码和基数D.整数和小数5.在Windows的窗口中切换、可以通过()方式进行。

A.Alt+Esc键B.选择资源管理器C.选择任务栏D.选择控制面板6.喷墨打印机较针式打印机的最大优点()A.打印成本较低B.体积小,重量轻C.采用非击打式,噪音较小D.以上说法都不对7.计算机病毒是指()A.编制有错误的计算机程序B.设计不完善的计算机程序C.计算机的程序已被破坏D.以危害系统为目的的特殊的计算机程序8.400个24×24点阵汉字的字形库存储容量是()A.28800个字节B.0.23604M个二进制位C.0.8K个字节D.288个二进制位9.文件夹中不可存放( )A.文件B.多个文件C.文件夹D.字符10.在微型机算计中,若将一个物理硬盘划分为多个逻辑硬盘,则约定第一个逻辑硬盘的名称为A.A盘B.C盘C.D盘D.E盘11.下面关于快捷菜单说法正确的是()A.快捷菜单内容与鼠标指向的区域和对象有关B.快捷菜单的内容是一样的C.单击鼠标左键调出快捷菜单D.双击鼠标右键调出快捷菜单12.在Excel中,给当前单元格输入文字型数据时,其默认值为()A.居中B.左对齐C.右对齐D.随机13.在计算机的应用中,“OA”表示()A.管理信息系统B.决策支持系统C.办公自动化D.人工智能14.在word中将鼠标指针移动到文档某一段的任意行处并要选定该段的内容,则鼠标的操作是()A.单击左键B.单击右键C.双击左键 C.三击左键15.在磁盘上保存的演示文稿的文件扩展名是()A.POTB.PPTC.DOTD.PPA16.word中显示页号、节号、页数、总页数等内容的是()A.常用工具栏B.菜单栏C.格式工具栏D.状态栏17.在word中,默认的行间距是()A.单倍行距B.1.5倍行距C.2倍行距D.多倍行距18.在Windows中,终止应用程序的正确方法是()A.按组合键Alt+F4B.将应用程序最小化成图标C.用鼠标双击标题栏 C.以上都不正确19.以下操作中,不能关闭窗口的是()A. Alt+F4B.用鼠标左键单击窗口标题栏上的“×”B.双击窗口的控制菜单按钮C.用鼠标左键单击窗口标题栏上的“-”20.在word中,进行“撤销”操作,应按的快捷键是()A.Ctrl+ZB.Ctrl+YC.Ctrl+WD. Ctrl+X。

计算机二级C语言上机复习题及答案解析范文一份

计算机二级C语言上机复习题及答案解析范文一份

计算机二级C语言上机复习题及答案解析范文一份计算机二级C语言上机复习题及答案解析 1计算机二级C语言上机复习题及答案解析填空题给定程序中,函数fun的功能是:在形参ss所指字符串数组中,查找含有形参substr所指子串的所有字符串并输出,若没找到则输出相应信息。

ss所指字符串数组__有N个字符串,且串长小于M。

程序中库函数strstr(s1, s2)的功能是在s1串中查找s2子串,若没有,函数值为0,若有,为非0。

请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!给定源程序:#include#include#define N 5#define M 15void fun(char (*ss)[M], char *substr){ int i,find=0;for(i=0; i __1__ ; i++)if( strstr(ss[i], __2__) != NULL ){ find=1; puts(ss[i]); printf(“\n"); }if (find==__3__) printf("\nDon't found!\n");}main(){ char x[N][M]={"BASIC","C langwage","Java","QBASIC","Access"},str[M];int i;printf("\nThe original string\n\n");for(i=0;i printf("\nEnter a string for search : "); gets(str);fun(x,str);}解题思路:本题是根据给定的字符串数组中查找指定的字符串,如果存在,则显示。

2017年4月全国计算机等级考试二级c语言笔试试题(含参考答案)

2017年4月全国计算机等级考试二级c语言笔试试题(含参考答案)

全国计算机等级考试二级笔试试题基础知识与C语言程序设计(考试时间120分钟,满分100分)2017年4月一、选择题(1-30每小题1分,31-45每小题2分,共60分)下列各题 A),B),C),D)四个选项,只有一个选项是正确的,请将正确的选项在答题卡相应位置上涂黑。

答在试卷上不得分。

(1)二进制数101110转换为等值的八进制数是【1】。

【1】 A) 45 B) 56 C) 67 D) 78(2)CPU是由【2】组成的。

【】【2】A) 内存储器和控制器B) 控制器和运算器C) 内存储器和运算器D) 内存储器、控制器和运算器(3)DOS是为IBM PC系列微型计算机及其兼容机所配置的【3】磁盘操作系统。

【3】A) 多用户多任务B) 单用户单任务 C) 分时D) 分布式(4)启动MS-DOS操作系统后,【4】已驻留内存。

【4】A) B) C) D) CCCC.EXE(5)设当前目录为F2,则把A盘根目录下的PROG.BAS文件复制到B盘F3子目录中的命令是【5】。

【5】A) COPY PROG.BAS B: B) COPY A:PROG.BAS B:\C) COPY A:\PROG.BAS B:\F3 D) COPY A:PROG.BAS B:\F3\(6)下面四组DOS命令中,意义完全相同的一组是【6】。

【6】A) COPY和DISKCOPY B) COMP和DISKCOMPC) DEL和RD D) RENAME和REN(7)防止软盘感染病毒的有效方法是【7】。

【7】A) 不要把软盘和有毒软盘放在一起 B) 在写保护缺口上贴上胶条C) 保持机房清洁 D) 定期对软盘格式化(8)双面高密度5英寸软磁盘的容量是【8】。

【8】A) 360KB B) 720KB C) 1.2MB D) 1.44MB(9)在FOXBASE中,可以使用的两类变量是【9】。

【9】A) 内存变量和字段变量B) 全局变量和局部变量C) 字段变量和简单变量D) 内存变量和自动变量(10)建立一个新子目录的DOS命令是【10】。

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

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

全国计算机二级《C语言》操作试题及答案2017全国计算机二级《C语言》操作试题及答案一、程序填空题给定程序中,函数fun的功能是:把形参S所指字符串中最右边的n个字符复制到形参t所指字符数组中,形成一个新串。

若s所指字符串的长度小于n,则将整个字符串复制到形参t所指字符数组中。

例如,形参s所指的字符串为:abcdefgh,n的.值为5,程序执行后t所指字符数组中的字符串应为:defgh。

请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。

注意:部分源程序在文件BLANKl.C中。

二、程序修改题下列给定程序中,函数fun的功能是:找出一个大于给定整数m 且紧随m的素数,并作为函数值返回。

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

注意:部分源程序在文件MODll.C中,不要改动main函数,不得增行或删行,也不得更改程序的结构!三、程序设计题参考答案一、程序填空题【参考答案】二、程序修改题【参考答案】(1)if(i%k==0)(2)if(k==i)【解题思路】(1)判断当前数是否为素数,若存在一个数(除1和其自身)能整除当前数,则跳出本次循环,所以if条件应为i%k==0。

(2)如果i是素数,则循环结束时k==i,将该值返回。

三、程序设计题【参考答案】【解题思路】本题考查:偶数的判定方法;整除的实现。

本题题干信息是:能整除X且不是偶数的所有整数。

循环语句中变量i从1开始且每次增2,所以i始终是奇数。

整除的方法,已经讲过多次,这里就不再赘述了。

对于本题目要求的不是偶数的判定方法,即该数对2求余不为0。

除本题描述的方法外,还可以通过for循环语句直接把偶数筛出去,确保参与操作的数均为奇数。

更多计算机二级考试相关试题推荐:1.2.3.4.5.6.7.8.9.10.。

计算机二级C语言上机测试题附答案

计算机二级C语言上机测试题附答案

计算机二级C语言上机测试题附答案2017计算机二级C语言上机测试题附答案引导语:计算机上机考试要灵活应变,以下是店铺分享给大家的2017计算机二级C语言上机测试题附答案,欢迎测试!1.程序填空给定程序的功能是判断字符ch是否与串str中的某个字符相同:若相同,什么也不做,若不同,则插在串的最后。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果注意:不得增行或删行,也不得更改程序的结构!试题程序:#include#includevoid fun(char*str, char ch ){ while ( *str && *str != ch ) str++;if( *str 1 ch ){ str[0] =ch;2 = 0;}}main( ){ char s[81], c;printf( "\nPlease enter a string:\n" ); gets ( s );printf ("\n Please enter the character to search : " );c = getcharO;fun( 3 ) ;printf( "\nThe result is %s\n", s);2.程序修改【答案】(1)错误:第5行fun(int**a,int m)正确:fun(int a[][M],Int m)(2)错误:第9行 a[j][k]=k*j;正确:a[j][k]=(k+1)*(j+1);【评析】第5行:第二个形参m是用户输入的维数,没有别的名堂,第一个形参是为了指明在函数fun()中要产生的多维数组,"**a"是不能正确表示一个多维数组的,我们应当使用"int a[M][M]"。

第9行:循环体的.内容是给m维的多维数组赋值,这个多维数组在列方向是由1开始的自然数,在行方向上是行首第一数的n倍数,显然,"a[j][k]=k*j;"不符合题意,我们应当使用"a[j][k]=(k+1)*(j+1);"。

计算机二级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语言中,使用________运算符可以对变量进行自增操作。

2017年全国计算机等级考试二级C语言真题及答案

2017年全国计算机等级考试二级C语言真题及答案

全国计算机等级考试二级笔试试卷C 语言程序设计(附答案)(考试时间90 分钟,满分100 分)一、选择题((1)—(10)、(21)—(40)每题2 分,(11)—(20)每题1 分,共70 分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确的选项填涂在答题卡相应位置上,答在试卷上不得分。

(1)下列叙述中正确的是A)线性表的链式存储结构与顺序存储结构所需要的存储空间是相同的B)线性表的链式存储结构所需要的存储空间一般要多于顺序存储结构C)线性表的链式存储结构所需要的存储空间一般要少于顺序存储结构D)上述三种说法都不对(2)下列叙述中正确的是A)在栈中,栈中元素随栈底指针与栈顶指针的变化而动态变化B)在栈中,栈顶指针不变,栈中元素随栈底指针的变化而动态变化C)在栈中,栈底指针不变,栈中元素随栈顶指针的变化而动态变化D)上述三种说法都不对(3)软件测试的目的是A)评估软件可靠性B)发现并改正程序中的错误C)改正程序中的错误D)发现程序中的错误(4)下面描述中,不属于软件危机表现的是A)软件过程不规范B)软件开发生产率低C)软件质量难以控制C)软件成本不断提高(5)软件生命周期是指A)软件产品从提出、实现、使用维护到停止使用退役过程B)软件从需求分析、设计、实现到测试完成的过程C)软件的开发过程D)软件的运行维护过程(6)面向对象方法中,继承是指A)一组对象所具有的相似性质B)一个对象具有另一个对象的性质C)各对象之间的共同性质D)类之间共享属性和操作的机制(7)层次型、网状型和关系型数据库划分原则是A)记录长度B)文件的大小B)联系的复杂程度D)数据之间的联系方式(8)一个工作人员可以使用多台计算机,而一台计算机可被多个人使用,则实体工作人员与实体计算机之间联系是A)一对一B)一对多C)多对多D)多对一(9)数据库设计中反映用户对数据要求的模式是A)内模式B)概念模式C)外模式D)设计模式(10)有三个关系R、S 和T 如下:则由关系R 和S 得到关系T 的操作是A)自然连接B)交C)投影D)并(11)以下关于结构化程序设计的叙述中正确的是A)一个结构化程序必须同时由顺序、分支、循环三种结构组成B)结构化程序使用goto 语句会很便捷C)在C 语言中,程序的模块化是利用函数实现的D)由三种基本结构构成的程序只能解决小规模的问题(12)以下关于简单程序设计的步骤和顺序的说法中正确的是A)确定算法后,整理并写出文档,最后进行编码和上机调试B)首先确定数据结构,然后确定算法,再编码,并上机调试,最后整理文档C)先编码和上机调试,在编码过程中确定算法和数据结构,最后整理文档D)先写好文档,再根据文档进行编码和上机调试,最后确定算法和数据结构(13)以下叙述中错误的是A)C 程序在运行过程中所有计算都以二进制方式进行B)C 程序在运行过程中所有计算都以十进制方式进行C)所有C 程序都需要编译链接无误后才能进行D)C 程序中整型变量只能存放整数,实型变量只能存放浮点数(14)有以下定义:int a;long b;double x,y;则以下选项中正确的表达式是A)a%(int)(x-y) B)a=x!=y; C)(a*y)%b D)y=x+y=x(15)以下选项中能表示合法常量的是A)整数:1,200 B)实数:1.5E2.0 C)字符斜杠:‟\‟ D)字符串:”\007” (16)表达式a+=a-=a=9 的值是A)9 B)-9 C)18 D)0(17)若变量已正确定义,在if(W)printf(“%d\n”,k);中,以下不可替代W的是A)a<>b+c B)ch=getchar() C)a==b+c D)a++(18)有以下程序#includemain(){ int a=1,b=0;if(!a) b++;else if(a==0)if(a) b+=2;else b+=3;printf(“%d\n”,b);}程序运行后的输出结果是A)0 B)1 C)2 D)3(19)若有定义语句int a,b;double x;则下列选项中没有错误的是A)switch (x%2){ case 0: a++; break;case 1: b++; break;default: a++; b++; }B) switch ((int)x/2.0){ case 0: a++; break;case 1: b++; break;default : a++; b++; }C) switch((int)x%2){ case 0: a++; break;case 1: b++; break;default : a++; b++; }D)switch((int)(x)%2){ case 0.0: a++; break;case 1.0: b++; break;default : a++; b++; }(20)有以下程序#includemain(){ int a=1,b=2;while(a<6) {b+=a; a+=2;b%=10;}printf(“%d, %d\n”,a,b);}程序运行后的输出结果是A)5,11 B)7,1 C)7,11 D)6,1(21)有以下程序#includemain(){ int y=10;while(y--);printf(“y=%d\n”,y);}程序执行后的输出结果是A)y=0 B)y=-1 C)y=1 D)while 构成无限循环(22)有以下程序#includemain(){ char s[ ]=”rstuv”;printf(“%c\n”,*s+2);}程序运行后的输出结果是A)tuv B) 字符t 的ASCII 值C)t D)出错(23)有以下程序#include <stdio.h>#include <string.h>main(){ char x[ ]=”STRING”;x[0]=0; x[1]=‟\0‟; x[2]=‟0‟;printf(“%d %d\n”,sizeof(x),strlen(x));}程序运行后的输出结果是A) 6 1 B) 7 0 C) 6 3 D) 7 1(24)有以下程序#includeint f(int x);main(){ int n=1,m;m=f(f(f(n)));printf(“%d\n”,m);}int f(int x){ return x*2; }程序运行后的输出结果是A)1 B)2 C)4 D)8(25)以下程序段完全正确的是A)int *p; scanf(“%d”,&p);B) int *p; scanf(“%d”,p);C) int k, *p=&k; scanf(“%d”,p);D) int k,*p; *p=&k; scanf(“%d”,p);(26)有定义语句:int *p[4];以下选项中与此语句等价的是A)int p[4]; B)int **p; C)int *(p[4]); D)int (*p)[4];(27)下列定义数组的语句中,正确的是A) int N=10; B) #define N 10 int x[N]; int x[N]; C) int x[0..10]; D) int x[ ];(28)若要定义一个具有5 个元素的整型数组,以下错误的定义语句是A)int a[5]={0}; B) int b[ ]={0,0,0,0,0}; C)int c[2+3]; D) int i=5,d[i];(29)有以下程序#includevoid f(int *p);main(){ int a[5]={1,2,3,4,5},*r=a;f(r );printf(“%d\n”,*r); }void f(int *p){ p=p+3;printf(“%d,”,*p);}程序运行后的输出结果是A)1,4 B)4,4 C) 3,1 D)4,1(30)有以下程序(函数fun 只对下标为偶数的元素进行操作)#includevoid fun(int *a,int n){ int i,j,k,t;for(i=0;i<n-1;i+=2){k=i;for(j=i;j<n;j+=2) if(a[j]>a[k]) k=j;t=a[i]; a[i]=a[k]; a[k]=t; }}main(){ int aa[10]={1,2,3,4,5,6,7},i;fun(aa,7);for(i=0;i<7;i++)printf(“%d,”,aa[i]);printf(“\n”);}程序运行后输出结果是A)7,2,5,4,3,6,1,B)1,6,3,4,5,2,7,C)7,6,5,4,3,2,1,D)1,7,3,5,6,2,1,(31)下列选项中,能够满足“若字符串s1 等于字符串s2, 则执行ST”要求的是A)if(strcmp(s2,s1) ==0) ST;B) if(s1==s2) ST;C) if(strcpy(s1,s2) ==1) ST;D) if(s1-s2==0) ST;(32)以下不能将s 所指字符串正确复制到t 所指存储空间的是A)while(*t=*s){t++,s++;}B)for(i=0;t[i]=s[i];i++);C)do{*t++=*s++;}while(*s);D)for(i=0,j=0;t[i++]=s[j++]; );(33)有以下程序(strcat 函数用以连接两个字符串)#include <stdio.h>#include <string.h>main(){ char a[20]=”ABCD\0EFG\0”, b[ ]=”IJK”;strcat(a,b);printf(“%s\n”,a);}程序运行后的输出结果是A)ABCDE\OFG\OIJK B)ABCDIJK C)IJK D)EFGIJK(34)有以下程序,程序中库函数islower(ch)用以判断ch 中的字母是否为小写字母#include <stdio.h>#include <ctype.h>void fun(char *p){ int i=0;while(p[i]){ if(p[i] ==‟…&&islower(p[i-1])) p[i-1]=p[i-1]-‟a‟+‟A‟;i++;}}main(){ char s1[100]=”ab cd EFG !”;fun(s1);printf(“%s\n”,s1);}程序运行后的结果是A) ab cd EFG ! B) Ab Cd EFg ! C) aB cD EFG ! D) ab cd EFg !(35)有以下程序#includevoid fun(int x){ if(x/2>1)fun(x/2);printf(“%d ”,x);}main(){ fun(7);printf(“\n”);}程序运行后的输出结果是A)1 3 7 B)7 3 1 C)7 3 D)3 7(36)有以下程序#includeint fun(){ static int x=1;x+=1;return x;}main(){ int i, s=1;for(i=1;i<=5;i++)s+=fun();printf(“%d\n”,s);}程序运行后的输出结果是A)11 B)21 C)6 D)120(37)有以下程序`#include <stdio.h>#include <stdlib.h>main(){ int *a,*b,*c;a=b=c=(int *)malloc(sizeof(int));*a=1;*b=2;*c=3;a=b;printf(“%d,%d,%d\n”,*a,*b,*c);}程序运行后的输出结果是A)3,3,3 B)2,2,3 C)1,2,3 D)1,1,3(38)有以下程序#includemain(){ int s,t,A=10;double B=6;s=sizeof(A);t=sizeof(B);printf(“%d,%d\n”,s,t);}在VC6 平台上编绎运行,程序运行后输出结果是A)2,4 B)1,4 C)4,8 D)10,6(39)若有以下语句typedef struct S{int g ; char h;} T;以下叙述中正确的是A)可用S 定义结构体变量B)可用T 定义结构体变量C)S 是struct 类型的变量D)T 是struct S 类型的变量(40)有以下程序#includemain(){ short c=124; c=c ;printf(“%d\n”,c);}若要使程序的运行结果为248,应在下划线处填入的是A)>>2 B) |248 C)& 0248 D) <<1二、填空题(每空2 分,共30 分)请将每空的正确答案写在答题卡【1】至【15】序号的横线上,答在试卷上不得分。

全国计算机等级考试二级C语言上机题库

全国计算机等级考试二级C语言上机题库

2017年3月全国计算机等级考试二级C语言上机题库100套(从光碟拷贝出来的最完整版)(可以拷贝在U盘里,然后ctrl+F搜索,百分百有答案,祝考试成功)第一套1. 程序填空给定程序中,函数fun的功能是:计算下式前n 项的和作为函数值返回。

例如:当形参n的值为10 的时,函数返回:。

第一处s=0;第二处for(i=1;i<=n;i++)第三处s=s+*i-1)**i+1)/(t*t);2. 程序修改给定程序中函数fun的功能是:统计substr所指字符串在str所指字符串中出现伯次数。

/**found**/for(i=0;str[i];i++)/**found**/if(substr[k+1]==’\0’)3. 程序设计请编写一个函数fun,它的功能是:根据以下公式求JI的值(要求满足精度,即某项小于时停止送代):程序运行后,如果输入精度为,则程序输出为…。

double fun(double eps){ double s=1,t=1./3;int n=1;while(t>=eps){s+=t;n++;t=t*n/*n+1);}return(s*;}第二套1.程序填空给定程序中已建立一个带有头结点的单向链表,链表中的各结点按数据域递增有序连接。

函数fun的功能是:删除链表中数据域值相同的结点,使之只保留一个。

第一处free(q);第二处q=p->next;第三处q=q->next;2. 程序修改给定程序中函数fun的功能是:用选择法对数组中的n各元素按从小到大的顺序进行排序。

/**found**/p=j;/**found**/p=i;3. 程序设计请编写一个fun函数,它的功能是:求出1到m之间(含m)能被7或11整除的所有整数放在数组a中,通过n返回这些数的个数。

void fun(int m,int *a,int *n){int i;*n=0;for(i=7;i<=m;i++)if((i%7==0)||(i%11==0))a[(*n)++]=i;}第三套1. 程序填空函数fun的功能是:逆置数组元素是的值。

全国计算机二级《C语言》考试题及答案

全国计算机二级《C语言》考试题及答案

全国计算机二级《C语言》考试题及答案2017全国计算机二级《C语言》考试题及答案在备考复习阶段,需通过大量试题练习,加深对考点的理解和掌握。

以下是店铺搜索整理2017全国计算机二级《C语言》考试题及答案,供参考练习,希望对大家有所帮助!一、选择题1).我们所写的每条C语句,经过编译最终都将转换成二进制的机器指令。

关于转换以下说法错误的是()A.一条C语句可能会被转换成多条机器指令B.一条C语句对应转换成一条机器指令C.一条C语句可能会被转换成零条机器指令D.某种类型和格式的C语句被转换成机器指令的条数是固定的正确答案:B答案解析:由C语言编写的程序,通过编译、链接转换成可以让机器识别的01二进制指令。

这些二进制指令命令机器计算,这些就是机器指令,而C语言的语句条数和机器指令的条数不是一对一的关系。

2).数据库系统在其内部具有3级模式,用来描述数据库中全体数据的全局逻辑结构和特性的是()。

A.外模式B.概念模式C.内模式D.存储模式正确答案:B答案解析:概念模式,也称逻辑模式,是对数据库系统中全局数据逻辑结构的描述,是全体用户应用公共数据视图。

它不涉及具体的硬件环境与平台,与具体的软件环境也无关。

3).以下叙述中正确的是()A.程序的算法只能使用流程图来描述B.N-S流程图只能描述简单的顺序结构的程序C.计算机可以直接处理C语言程序,不必进行任何转换D.结构化程序的三种基本结构是循环结构、选择结构、顺序结构正确答案:D答案解析:结构化程序有三种基本结构循环结构、选择结构、顺序结构,描述算法常见的有文字描述,流程图,盒图,伪代码等。

N-S图为盒图,可以描述比较复杂的程序结构,而计算机不能直接处理C 程序,只能处理二进制代码。

4).下列叙述中正确的是()A.两个连续的单引号(′′)是合法的字符常量B.可以对字符串进行关系运算C.两个连续的双引号(″″)是合法的字符串常量D.空字符串不占用内存,其内存空间大小是0正确答案:C答案解析:两个连续的双引号:″″,是一个字符串常量,称为″空串″。

2017年全国计算机2级考试(C语言程序设计)笔试模拟试题及答案

2017年全国计算机2级考试(C语言程序设计)笔试模拟试题及答案

2017年全国计算机等级考试二级笔试模拟试题C语言程序设计(考试时间90分钟,满分100分)一、选择题((1)-(10)、(21)-(40)每题2分,(11)-(20)每题1分,共70分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。

(1)下列叙述中正确的是()A)栈是“先进先出”的线性表B)队列是“先进后出”的线性表C)循环队列是非线性结构D)有序线性表既可以采用顺序存储结构,也可以采用链式存储结构(2)支持子程序调用的数据结构是()A)栈B)树C)队列D)二叉树(3)某二叉树有5个度为z的结点,则该二叉树中的叶子结点数是()A)10 B)8 C)6 D)4(4)下列排序方法中,最坏情况下比较次数最少的是()A)冒泡排序B)简单选择排序C)直接插入排序D)堆排序(5)软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。

下面属于应用软件的是()A)编译程序B)操作系统C)教务管理系统D)汇编程序(6)下面叙述中错误的是()A)软件测试的目的是发现错误并改正错误B)对被调试的程序进行“错误定位”是程序调试的必要步骤C)程序调试通常也称为DebugD)软件测试应严格执行测试计划,排除测试的随意性(7)耦合性和内聚性是对模块独立性度量的两个标准。

下列叙述中正确的是()A)提高耦合性降低内聚性有利他哦高模块的独立性B)降低耦合性提高内聚性有利于提高模块的独立性C)耦合性是指一个模块内部各个元索间彼此结合的紧密程度D)内聚性是指模块间互相连接的紧密程度(8)数据库应用系统中的核心问题是()A)数据库设计B)数据库系统设计C)数据库维护D)数据库管理员培训(9)有两个关系R, S如下:由关系R通过运算得到关系S,则所使用的运算为()A)选择B)投影C)插入D)连接(10)将E-R图转换为关系模式时,实体和联系都可以表示为()A)属性B)键C)关系D)域(11)以下选项中合法的标识符是()A)1_1 B)1-1 C)_11 D)1_ _(12)若函数中有定于语句:int k;,则()A)系统将自动给K赋初值0B)时k中的值无定义C)系统将自动给k赋初值-1D)这时k中无任何值(13)以下选项中,能用作数据常量的是()A)0115 B)0118 C)1.5e1.5 D)115L(14)设有定义:int x=2;,以下表达式中,值不为6的是()A)x*=x+1 B)x++,2*x C)x*=(i+x)D)2*x, x+=2(15)程序段:int x=12; double y=3.141593; printf(“%d%8.6f”,x, y);的输出结果是()A)123.141593 B)12 3.141593 C)12, 3.141593 D)123.1415930(16)若有定义语句:double x, y,*px,*pY; 执行了px=&x; py=&y;之后,正确的输入语句是()A)scarf(“%f%1”,x,y);B)scarf(“%f%f”,&x,&y);C)scarf(“%lf%1e”,px,py);D)scarf(“%lf%lf”,x,y);(17)以下是if语句的基本形式:()if〔表达式)语句其中“表达式”A)必须是逻辑表达式B)必须是关系表达式C)必须是逻辑表达式或关系表达式D)可以是任意合法的表达式(18)有以下程序#include <stdio.h>main(){int x;scarf(“&d”,&x);i f (x<=3);elseif (x!=10)printf(“&d\n”。

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

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

计算机等级C语言考试试题及答案2017计算机等级C语言考试试题及答案多媒体计算机将真正改善人机界面,使计算机朝着人类接受和处理信息的最自然的方式发展。

下面是店铺整理的关于计算机等级C语言考试试题及答案,欢迎大家参考!一、选择题1). 下列关于因特网上收/发电子邮件优点的描述中,错误的是( )。

A.不受时间和地域的限制,只要能接入因特网,就能收发电子邮件B.方便、快速C.费用低廉D.收件人必须在原电子邮箱申请地接收电子邮件正确答案:D答案解析:由于电子邮件通过网络传送,具有方便、快速、不受地域或时间限制、费用低廉等优点,很受广大用户欢迎。

2). 在微机的配置中常看到“P42.4G”字样,其中数字“2.4G”表示( )。

A.处理器的时钟频率是2.4GHzB.处理器的运算速度是2.4C.处理器是Pentium4第2.4D.处理器与内存间的数据交换速率正确答案:A答案解析:在微机的配置中看到“P42.4G”字样,其中“2.4G”表示处理器的时钟频率是2.4GHz。

3). 下列编码中,属于正确国际码的是A.SEF6HB.FB67HC.8E8FHD.C97DH正确答案:C答案解析:国际码的范围是2121H~7E7EH。

4). 根据汉字国标GB 2312-80的规定,一个汉字的内码码长为A.8bitsB.12bitsC.16bitsD.24bits正确答案:C答案解析:一个汉字的机内码一般用两个字节即16个二进制位来表示。

5). 构成CPU的主要部件是( )。

A.内存和控制器B.内存、控制器和运算器C.高速缓存和运算器D.控制器和运算器正确答案:D答案解析:中央处理器(CPU)主要包括运算器和控制器两大部件。

它是计算机的核心部件。

CPU是一体积不大而元件的集成度非常高、功能强大的芯片。

计算机的所有操作都受CPU控制,所以它的品质直接影响着整个计算机系统的性能。

二、基本操作题1.将考生文件夹下PASTE文件夹中的文件FLOPY.BAS复制到考生文件夹下JUSTY文件夹中.2.将考生文件夹下PARM文件夹中的文件HOLIER.DOC设置为只读属性.3.在考生文件夹下HUN文件夹中建立一个新文件夹CALCUT.4.将考生文件夹下SMITH文件夹中的文件COUNTING.WRl移动到考生文件夹下OFFICE文件夹中,并改名为IDEND.WRl.5.将考生文件夹下SUPPER文件夹中的文件WORD5.PPT删除.三、字处理题1.在考生文件夹下,打开文档WORDl.docx,按照要求完成下列操作并以该文件名(WORDl.docx)保存文档.【文档开始】调查表明京沪穗网民主导“82C”根据蓝田市场研究公司对全国16个城市网民的调查表明,北京、上海、广州网民最近3个月有网上购物行为的人数比例分别为l3.1%、5.3%、6.1%,远远高于全国平均水平的2.8%;与去年同期相比,北京、上海、广州三地最近3个月中有网上购物行为的人数比例为8.6%,比去年有近半幅的增长.尽管互联网的冬季仍未过去,但调查结果预示,京、沪、穗三地将成为我国互联网及电子商务的早春之地,同时是82C电子商务市场的中心地位,并起着引导作用,足以引起电子商务界的关注.调查还发现,网民中网上购物的行为与城市在全国的中心化程度有关,而与单纯的经济发展水平的关联较弱.深圳是全国人均收入最高的地区,大连也是人均收入较高的城市,但两城市网民的网上购物的人数比例分别只有1.1%、l.9%,低于武汉、重庆等城市.蓝田市场研究公司通过两年的调查认为,影响我国82C电子商务发展的因素,除了经常提到的网络条件、网民数量、配送系统、支付系统等基础因素外,还要重视消费者的购物习惯、购物观念,后者的转变甚至比前者需要更长的'时间和耐心.【文档结束】(1)将标题段(“调查表明京沪穗网民主导‘B2C”)设置为小二号黑体、红色、居中,并添加黄色底纹,设置段后间距为1行.(2)将正文各段(“根据蓝田市场研究公司……更长的时间和耐心.”)中所有的“互联网”替换为“因特网”;各段落内容设置为小五号宋体,各段落左、右各缩进0.5字符,首行缩进2字符,行距l8磅.2.在考生文件夹下,打开文档WORD2.d.cx,按照要求完成下列操作并以该文件名(WORD2.docx)保存文档.【文档开始】【文档结束】(1)在表格最右边插入一空列,输入列标题“总分”,在这一列下面的各单元格中计算其左边相应3个单元格中数据的总和.(2)将表格设置为列宽2.4厘米;表格外框线为3磅单实线,表内线为1磅单实线;表内所有内容对齐方式为水平居中.二、基本操作题1.复制文件①打开考生文件夹下PASTE文件夹,选中FLOPY.BAS文件;②选择【编辑】|【复制】命令,或按快捷键Ctrl+C;③打开考生文件夹下JUSTY文件夹;④选择【编辑】I【粘贴】命令,或按快捷键Ctrl+V。

全国计算机等级考试二级c语言上机题库

全国计算机等级考试二级c语言上机题库

全国计算机等级考试二级c语言上机题库【例1】给定程序中,函数fun的功能是:将形参n所指变量中,各位上为偶数的数去除,剩余的数按原来从高位到低位的顺序组成一个新的数,并通过形参指针n传回所指变量。

例如,输入一个数:27638496,新的数:为739。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!给定源程序:#includevoidfun(unsignedlong*n){unsignedlongx=0,i;intt;i=1;while(*n){t=*n%__1__;if(t%2!=__2__){x=x+t*i;i=i*10;}*n=*n/10;}*n=__3__;}main(){unsignedlongn=-1;while(n>99999999||n<0){printf("Pleaseinput(0fun(&n);printf("\Theresultis:%ld\",n);}解题思路:第一处:t是通过取模的方式来得到*n的个位数字,所以应填:10。

第二处:判断是否是奇数,所以应填:0。

第三处:最后通形参n来返回新数x,所以应填:x。

给定程序MODI1.C中函数fun的功能是:计算n!。

例如,给n输入5,则输出120.000000。

【例2】请改正程序中的错误,使程序能输出正确的结果。

注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!给定源程序:#includedoublefun(intn){doubleresult=1.0;ifn==0return1.0;while(n>1&&n<170)result*=n--returnresult;}main(){intn;printf("InputN:");scanf("%d",&n);printf("\\%d!=%lf\\",n,fun(n));}解题思路:第一处:条件语句书写格式错误,应改为:if(n==0)。

2017年全国计算机等级考试二级C 语言真题及答案8

2017年全国计算机等级考试二级C 语言真题及答案8

2017 年全国计算机等级考试笔试试卷及答案二级公共基础知识和C 语言程序设计(考试时间120 分钟,满分100 分)一、选择题((1)-(10)每小题2 分,(11)-(50)每小题1 分,共60 分)(1)下列选项中不属于结构化程序设计方法的是()。

A)自顶向下B)逐步求精C)模块化D)可复用(2)两个或两个以上模块之间关联的紧密程度称为()。

A)耦合度B)内聚度C)复杂度D)数据传输特性(3)下列叙述中正确的是()。

A)软件测试应该由程序开发者来完成B)程序经调试后一般不需要再测试C)软件维护只包括对程序代码的维护D)以上三种说法都不对(4)按照“后进先出”原则组织数据的数据结构是()。

A)队列B)栈C)双向链表D)二叉树(5)下列叙述中正确的是()。

A)线性链表是线性表的链式存储结构B)栈与队列是非线性结构C)双向链表是非线性结构D)只有根结点的二叉树是线性结构(6)对如下二叉树进行后序遍历的结果为()。

A)ABCDEFB)DBEAFCC)ABDECFD)DEBFCA(7)在深度为7 的满二叉树中,叶子结点的个数为()。

A)32B)31C)64D)63(8)“商品”与“顾客”两个实体集之间的联系一般是()。

A)一对一B)一对多C)多对一D)多对多(9)在E-R 图中,用来表示实体的图形是()。

A)矩形B)椭圆形C)菱形D)三角形(10)数据库DB、数据库系统DBS、数据库管理系统DBMS 之间的关系是()。

A)DB 包含DBS 和DBMSB)DBMS 包含DB 和DBSC)DBS 包含DB 和DBMSD)没有任何关系(11)下列不合法的用户标识符是()。

A)j2_KEYB)DoubleC)4dD)_8_(12)下列不合法的数值常量是()。

A)011B)1e1C)8.0E0.5D)0xabcd(13)下列不合法的字符常量是()。

A)'\018'B)'\" 'C)'\\'D)'\xcc'(14)表达式3.6-5/2+1.2+5%2 的值是()。

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

计算机基础知识和应用能力等级考试上机试卷二级C++ 语言(本试卷完成时间70分钟)
一、改错题
题目:下列程序的功能是在字符串中删除或添加一个指定字符,假设指定的字符时‘a’,若字符’a’出现在字符串str中,则从str中删除从左到右第一次出现的字符‘a’;否则把’a’添加到str的末尾处。

程序中,函数dele()用于删除字符;函数add()用于添加字符;函数search()用于查找指定的字符是否在字符串中出现,若出现则返回该字符指针,否则返回0。

例如,若字符串str为“abc12123”,则程序两次正确运行结果为:
(1)please input a char :2《回车》
abc1123
(2)please input a char:d《回车》
abc12123d
含有错误的源程序如下:
#include <iostream.h>
#include<string.h>
char *search(char *s, char ch)//查找字符,不允许修改此行。

{
while(*s)
if(*s++==ch)return s;
return 0;
}
void dele(char *s,char ch)//删除字符,不允许修改此行。

{ char *p1=search(s,ch),*p2=p1+1;
while(*p2) *p1++=*p2++;
*p1=’\0’;
}
void add(char *s,char ch)//追加字符,不允许修改此行。

{
while (*s) s++;
*s=ch;
*s=’\0’;
}
void main()
{
char str[80]=”abc12123”,c;
cout<<”please input a char:”
getchar(c);
void (*fp)(char *,char);
if(search(str,c))fp=dele;
else fp=add;
fp(c,str);
cout<<str<<endl;
}
[要求]
1将上述程序录入到文件myfa.cpp中,根据题目要求及程序中语言之间的逻辑关系对程序中的错误进行修改。

程序中的注解可以不输入。

2改错时。

可以修改语句中的一部分内容,增加少量的变量说明、寒暑原型说明或编译预处理命令,但不能赠机其他语句,也不能删除整条语句。

3改正后的源文件myfa.cpp必须放在T:盘的根目录下,供阅卷用。

二。

编程题
题目已知平面直角坐标系中两点(x1,y1)和(x2,y2)之间的距离公式为
x
y
x
y
x
(x
-
+
-
y-
y
-,三角形面积的计算公式为
)(
1
)2
1
1
2
(
2
1
)(
)2
a
s
s
-。

其中,a,b,c为三角形的三边长,s=(1/2)(a+b+c).是定义一个描s-
-
)(
b
)(
)
(c
s
述平面直角坐标系上点的类Point,利用友元函数求坐标系中由三个点构成的三角形面积。

具体要求如下:
(1)私有数据成员
float x,y;坐标系中的一个点坐标。

(2)公有数据成员
Point(double ,double);构造函数,初始化成员,参数的缺省值为0。

void print();输出点的坐标,格式为(x,y);
(3)友元函数
double distance(Point,Point);计算两点之间的距离。

double area(Point,Point,Point);计算由参数构成的三角形的面积,假设给定的三个点能够构成三角形。

(3)在主函数中完成对该类的测试。

定义三个类的对象p1,p2,p3,这三个点的坐标分别为(5,10)。

(1.67).(50.-25)。

输入这三点坐标,计算并输出由这
三个点构成的三角形的面积。

程序正确的输出结果为:
三角形的顶点坐标为:
(5.10)
(1.67)
(50.-25)
三角形的面积为:1212.5
要求程序的文件名必须为myfb。

cpp,并放在考试盘的根目录下。

相关文档
最新文档