江苏二级C模拟题1

合集下载

江苏省计算机等级考试二级C上机考试模拟试题

江苏省计算机等级考试二级C上机考试模拟试题

江苏省计算机等级考试二级C上机考试模拟试题C01一、改错题(18分)【程序功能】下列程序中函数fun的功能是:首先将s数组中的字符串按以下规则复制到t数组:对于下标值为偶数位置上的字符复制n次(n=下标值+1),对于下标值为奇数位置上的字符只复制一次;其次将t数组中的字符串按字符编码从小到大的顺序排序。

【测试数据与运行结果】当s中的字符串为“abcdefg”时,运行结果应为“abcccdeeeeefggggggg”当s中的字符串为“”时,运行结果应为“6”【含有错误的源程序】#include "stdio.h"#include "conio.h"void fun (char *s, char *t){ int i,j,k,n=0; char temp;for(i=0;s[i]!='\0';++i)if(i%2=0)for(k=0;k<i+1;++k){ t[n]=s[i]; n++; }else t[n]=s[i];t[n]='\0';for (i=0;i<n-1;i++){k=i;for (j=0;j<n;j++)if(t[j]<t[k])k=j;if(k!=i){ temp=t[i]; t[i]=t[k]; t[k]=temp; }}}main(){ char s[20], t[100];printf("\nPlease enter string s:"); gets(s);fun(s);printf("The result is: %s\n", t);getch();}【要求】1.将上述程序录入到文件myf1.c中,根据题目要求及程序中语句之间的逻辑关系对程序中的错误进行修改。

2.改错时,可以修改语句中的一部分内容,调整语句次序,增加少量的变量说明或编译预处理命令,但不能增加其它语句,也不能删去整条语句。

国家二级C语言(数据结构与算法)机试模拟试卷1(题后含答案及解析)

国家二级C语言(数据结构与算法)机试模拟试卷1(题后含答案及解析)

国家二级C语言(数据结构与算法)机试模拟试卷1(题后含答案及解析)题型有:1. 选择题选择题1.算法具有五个特性,以下选项中不属于算法特性的是A.有穷性B.简洁性C.可行性D.确定性正确答案:B解析:算法的五个特性分别是:有穷性、可行性、确定性、输入和输出。

知识模块:数据结构与算法2.算法的有穷性是指A.算法程序的运行时间是有限的B.算法程序所处理的数据量是有限的C.算法程序的长度是有限的D.算法只能被有限的用户使用正确答案:A解析:算法的有穷性,是指算法必须能在有限的时间内做完,即算法必须能在执行有限个步骤之后终止。

知识模块:数据结构与算法3.算法的时间复杂度是指A.算法的执行时间B.算法所处理的数据最C.算法程序中的语句或指令条数D.算法在执行过程中所需要的基本运算次数正确答案:D解析:算法的时间复杂度,是指执行算法所需要的计算工作量。

算法的工作量可以用算法在执行过程中所需基本运算的执行次数来度量。

知识模块:数据结构与算法4.对存储器按字节进行编址,若某存储器芯片共有10根地址线,则该仔储器芯片的存储容量为A.1kbB.2kbC.4kbD.8kb正确答案:A解析:10根地址线,每根地址线有0和1两种情况,地址范围就是2的10次方=1024=1K。

知识模块:数据结构与算法5.磁盘处于写保护状态时其中的数据A.不能读出,不能删改B.可以读出,不能删改C.不能读出,可以删改D.可以读出,可以删改正确答案:B解析:磁盘处于写保护状态时其中的数据可以读出来,但是不能修改和删除。

知识模块:数据结构与算法6.在Windows环境下,单击当前窗口中的按钮“”,其功能是A.讲当前应用程序转为后台运行B.退Windows后再关机C.终止当前应用程序的运行D.退出Windows后重新启动计算机正确答案:C解析:在Windows中,单击窗口中的按钮“”表示关闭当前运行的程序。

知识模块:数据结构与算法7.下列描述中正确的是A.数据的逻辑结构与存储结构必定是一一对应的B.由于计算机存储空间是向量式的存储结构,因此,数据的存储结构一定是线性结构C.程序设计语言中的数据一般是顺序存储结构,因此,利用数组只能处理线性结构D.以上三种说法都不对正确答案:D解析:数据的逻辑结构是指反映数据元素之间逻辑关系的数据结构。

江苏省二级C笔试模拟练习题(1)

江苏省二级C笔试模拟练习题(1)

江苏省高等学校非计算机专业学生计算机基础知识和应用能力等级考试二级C语言全真模拟试卷(1)(本试卷包括计算机基础知识部分和程序设计部分,考试时间共120分钟)说明:1.本试卷满分为60分,分选择题和填空题,试卷不分A、B类型。

2.选择题用答题卡答题。

每一项有A、B、C、D四个可供选择的答案,请选择其中一个你认为正确的答案,用HB铅笔涂写在答题卡的相应答题号内。

每选对一项得1分,不选或选错不得分。

3.填空题用答题纸答题。

请将答案填写在答题纸的相应答题号内,每个答案只占一行,不得换行。

每填对一个答案得1分,不填或填错不得分。

4.请认真填写并仔细核对答题卡和答题纸上的学校名称、准考证号和姓名是否填写正确。

第一部分计算机基础知识1.信息处理系统是综合使用信息技术的系统。

下面有关信息处理系统的叙述中错误的是____1____。

A.信息处理系统从自动化程度来看,有人工的、半自动化的和全自动化的B.应用领域很广泛。

例如银行是一种以感知与识别为主要目的的系统C.信息处理系统是用于辅助人们进行信息获取、传递、存储、加工处理及控制的一种系统D.从技术手段上来看,有机械的、电子的和光学的;从通用性来看,有专片和通用的2.下面关于集成电路的叙述中,错误的是2。

A.集成电路是20世纪50年代出现的B.现代集成电路使用的半导体材料通常是硅或砷化镓C.集成电路的许多制造工序必须在恒温、恒湿、超洁净的无尘厂房内完成D.集成电路按用途可分为通用和专用两大类。

微处理器和存储器芯片都属于专用集成电路3.在通信系统的性能指标中,3是指数据传输中出错数据占被传输数据总数的比例。

A.信道带宽B.误码率C.数据率D.端-端延迟4.以下数据最大的是4。

A.01110110B B.120D C.7DH D.177Q 5.从逻辑功能上来讲,计算机硬件主要包括中央处理器(CPU)、内存储器、外存储器、输入设备和输出设备等,它们通过5互相连接。

A.总线B.控制线C.数据线D.地址线6.6接口是一种新的I/O接口,它是一种可以连接多个设备的总线式串行接口,2.0版的数据传输速率可高达480Mb/s(60MB/s),最多可以连接127个设备。

计算机等级考试二级C语言模拟试题(1)及答案

计算机等级考试二级C语言模拟试题(1)及答案

⼀、选择题(每题2分,共计70分)1.栈和队列的共同特点是A)都是先进先出B)都是先进后出C)只允许在端点处插⼊和删除元素D)没有共同点2.已知⼆叉树后序遍历序列是dabec,中序遍历序列是debac,它的前序遍历序列是A)acbedB)decabC)deabcD)cedba3.链表不具有的特点是A)不必事先估计存储空间B)可随机访问任⼀元素C)插⼊删除不需要移动元素D)所需空间与线性表长度成正⽐4.结构化程序设计的3种结构是A)顺序结构、选择结构、转移结构B)分⽀结构、等价结构、循环结构C)多分⽀结构、赋值结构、等价结构D)顺序结构、选择结构、循环结构5.为了提⾼测试的效率,应该A)随机选取测试数据B)取⼀切可能的输⼊数据作为测试数据C)在完成编码以后制定软件的测试计划D)集中对付那些错误群集的程序6.算法的时间复杂度是指A)执⾏算法程序所需要的时间B)算法程序的长度C)算法执⾏过程中所需要的基本运算次数D)算法程序中的指令条数7.软件⽣命周期中所花费⽤最多的阶段是A)详细设计B)软件编码C)软件测试D)软件维护8.数据库管理系统DBMS中⽤来定义模式、内模式和外模式的语⾔为A)CB)BasicC)DDLD)DML9.下列有关数据库的描述,正确的是A)数据库是⼀个DBF⽂件B)数据库是⼀个关系C)数据库是⼀个结构化的数据集合D)数据库是⼀组⽂件10.下列有关数据库的描述,正确的是A)数据处理是将信息转化为数据的过程B)数据的物理独⽴性是指当数据的逻辑结构改变时,数据的存储结构不变C)关系中的每⼀列称为元组,⼀个元组就是⼀个字段D)如果⼀个关系中的属性或属性组并⾮该关系的关键字,但它是另⼀个关系的关键字,则称其为本关系的外关键字11.以下叙述中正确的是A)C语⾔⽐其他语⾔⾼级B)C语⾔可以不⽤编译就能被计算机识别执⾏C)C语⾔以接近英语国家的⾃然语⾔和数学语⾔作为语⾔的表达形式D)C语⾔出现的最晚,具有其他语⾔的⼀切优点12.C语⾔中⽤于结构化程序设计的3种基本结构是A)顺序结构、选择结构、循环结构B)if,switch,breakC)for,while,do-whileD)if,for,continue13.C语⾔中最简单的数据类型包括A)整型、实型、逻辑型B)整型、实型、字符型C)整型、字符型、逻辑型D)字符型、实型、逻辑型14.若变量已正确定义并赋值,以下符合C语⾔语法的表达式是A)a:=b+1B)a=b=c+2C)int 18.5%3D)a=a+7=c+b15.下列可⽤于C语⾔⽤户标识符的⼀组是A)voiddefineWORDB)a3_b3_123CarC)For-abcIFCaseD)2aDOsizeof16.若变量a,i已正确定义,且i已正确赋值,合法的语句是A)a==1B)++i;C)a=a++=5;D)a=int(i);17.已知int t=0;while (t=1){...}则以下叙述正确的是A)循环控制表达式的值为0B)循环控制表达式的值为1C)循环控制表达式不合法D)以上说法都不对18.有如下程序main(){int x=1,a=0,b=0;switch(x){case 0: b++;case 1: a++;case 2: a++;b++;}printf("a=%d,b=%d\n",a,b);}该程序的输出结果是A)a=2,b=1B)a=1,b=1C)a=1,b=0D)a=2,b=219.有以下程序main(){ int i=1,j=1,k=2;if((j++||k++)&& i++)printf("%d,%d,%d\n",i,j,k);}执⾏后输出结果是A)1,1,2B)2,2,1C)2,2,2D)2,2,320.有如下程序main(){ int n=9;while(n>6){n--; printf("%d",n);}}该程序的输出结果是A)987B)876C)8765D)987621.在下列选项中,没有构成死循环的是A)int i=100;while(1){ i=i0+1;if(i>100)break;}B)for(;;);C)int k=10000;do{ k++; }while(k>10000);D)int s=36;while(s)--s;22.若已定义的函数有返回值,则以下关于该函数调⽤的叙述中错误的是A)函数调⽤可以作为独⽴的语句存在B)函数调⽤可以作为⼀个函数的实参C)函数调⽤可以出现在表达式中D)函数调⽤可以作为⼀个函数的形参23.有以下程序float fun(int x,int y){ return(x+y);}main(){ int a=2,b=5,c=8;printf("%3.0f\n",fun((int)fun(a+c,b),a-c));}程序运⾏后的输出结果是A)编译出错B)9C)21D)9.024.若有以下调⽤语句,则不正确的fun函数的⾸部是main(){ …int a[50],n;…fun(n, &a[9]);…}A)void fun(int m, int x[])B)void fun(int s, int h[41])C)void fun(int p, int *s)D)void fun(int n, int a)25.设有以下说明语句struct stu{ int a;float b;} stutype;则下⾯的叙述不正确的是A)struct是结构体类型的关键字B)struct stu是⽤户定义的结构体类型C)stutype是⽤户定义的结构体类型名D)a和b都是结构体成员名26.若运⾏时给变量x输⼊12,则以下程序的运⾏结果是main(){ int x,y;scanf("%d",&x);y=x>12?x+10:x-12;printf("%d\n",y);}A)0B)22C)12D)1027.以下说法正确的是A)C语⾔程序总是从第⼀个的函数开始执⾏B)在C语⾔程序中,要调⽤函数必须在main()函数中定义C)C语⾔程序总是从main()函数开始执⾏D)C语⾔程序中的main()函数必须放在程序的开始部分28.有以下程序#define F(X,Y)(X)*(Y)main(){ int a=3, b=4;printf("%d\n", F(a++, b++));}程序运⾏后的输出结果是A)12B)15C)16D)2029.下列程序执⾏后的输出结果是void func(int *a,int b[]){ b[0]=*a+6; }main(){ int a,b[5]={0};a=0; b[0]=3;func(&a,b); printf("%d\n",b[0]);}A)6B)7C)8D)930.若有下⾯的程序段char s[]="china";char *p; p=s;则下列叙述正确的是A)s和p完全相同B)数组s中的内容和指针变量p中的内容相等C)s数组长度和p所指向的字符串长度相等D)*p与s[0]相等31.以下程序中函数sort的功能是对a数组中的数据进⾏由⼤到⼩的排序void sort(int a[],int n){ int i,j,t;for(i=0;ifor(j=i+1;jif(a[i]}main(){ int aa[10]={1,2,3,4,5,6,7,8,9,10},i;sort(&aa[3],5);for(i=0;i<10;i++)printf("%d,",aa[i]);printf("\n");}程序运⾏后的输出结果是A)1,2,3,4,5,6,7,8,9,10,B)10,9,8,7,6,5,4,3,2,1,C)1,2,3,8,7,6,5,4,9,10,D)1,2,10,9,8,7,6,5,4,3,32.以下程序的运⾏结果是#include "stdio.h"main(){ struct date{ int year,month,day;}today;printf("%d\n",sizeof(struct date));}A)6B)8C)10D)1233.若执⾏下述程序时,若从键盘输⼊6和8时,结果为main(){ int a,b,s;scanf("%d%d",&a,&b);s=a;if(as=b;s*=s;printf("%d",s);}A)36B)64C)48D)以上都不对34.下列关于C语⾔数据⽂件的叙述中正确的是A)⽂件由ASCII码字符序列组成,C语⾔只能读写⽂本⽂件B)⽂件由⼆进制数据序列组成,C语⾔只能读写⼆进制⽂件C)⽂件由记录序列组成,可按数据的存放形式分为⼆进制⽂件和⽂本⽂件D)⽂件由数据流形式组成,可按数据的存放形式分为⼆进制⽂件和⽂本⽂件35.有以下程序void ss(char *s,char t){ while(*s){ if(*s==t)*s=t-′a′+′A′;s++;}}main(){ char str1[100]="abcddfefdbd",c=′d′;ss(str1,c); printf("%s\n",str1);}程序运⾏后的输出结果是A)ABCDDEFEDBDB)abcDDfefDbDC)abcAAfefAbAD)Abcddfefdbd⼆、填空题(每空2分,共计30分)1.算法的基本特征是可⾏性、确定性、【1】和拥有⾜够的情报。

江苏省计算机二级模拟考试(VC++)(试卷1)

江苏省计算机二级模拟考试(VC++)(试卷1)

}
void main()
{
char *str1="abababa", *str2="aba";
int num=0, t=0,t1, result[10];
while(1){
if((t1=index(str1+t1, str2))==-1) // index(str1+t, str2)
4'
break;
cout<<x<<endl; } private: int x; }; class B:public A{ public: B(int i):A(i+10){
x=i; } void displayB(){
displayA(); cout<<x<<endl; } private: int x; }; int main() { A a(3); a.displayA(); B b(2); b.displayB(); return 0; } 程序输出的第一行是__________,第二行是__________,第三行是__________。
【答案:B 】
2.[题号:127](单选题) (知识点:构造函数) 分值:2 在C++中,能实现对象初始化功能的是__________。
A. 析构函数 B. 数据成员 C. 构造函数 D. 静态成员函数
【答案:C 】
3.[题号:128](单选题) (知识点:类的继承与派生) 以下对于派生类的描述中,错误的是__________。
if(s1[i+j]==s2[j])
break;
if(j==len2)
return i+1;

二级计算机C语言

二级计算机C语言

全国计算机等级考试二级C语言笔试模拟试题(1)第1题若有语句int*point,a=4;和point=&a;下面均代表地址的一组选项是A.a,point,*&a B.&*a,&a,*point C.*&point,*point,&a D.&a,&*point,point 第2题现有如下程序段#include"stdio.h"main(){int k[30]={12,324,45,6,768,98,21,34,453,456};int count=0,i=0;while(k[i]){if(k[i]%2==0‖k[i]%5==0)count++;i++;}printf("%d,%d\n",count,i);}则程序段的输出结果为A.7,8B.8,8C.7,10D.8,10第3题树是结点的集合,它的根结点数目是A.有且只有1B.1或多于1C.0或1D.至少2第4题数据库、数据库系统和数据库管理系统之间的关系是A.数据库包括数据库系统和数据库管理系统B.数据库系统包括数据库和数据库管理系统C.数据库管理系统包括数据库和数据库系统D.3者没有明显的包含关系第5题当k的值不为0时,在下列选项中能够将k的值赋给变量m,n的是A.m=k=n B.(m=k)&&(n=k)C.(m=k)||(n=k)D.(k=m)&&(n=k)第6题设x,y和z都是int型变量,且x=3,y=4,z=5,则下面表达式中,值为0的表达式是A.x&&y B.x<=y C.x||++y&&y-z D.!(x第7题以下不正确的定义语句是A.double x[5]={2.0,4.0,6.0,8.0,10.0};B.int y[5.3]={0,1,3,5,7,9};C.char c1[]={′1′,′2′,′3′,′4′,′5′};D.char c2[]={′\x10′,′\xa′,′\x8′};第8题阅读下面程序段,则执行后的结果为#include"stdio.h"main(){int m=4,n=2,k;k=fun(m,n);printf("%d\n",k);}fun(int m,int n){return (m*m*m-n*n*n);}A.64B.8C.56D.0第9题软件工程的理论和技术性研究的内容主要包括软件开发技术和A.消除软件危机B.软件工程管理C.程序设计自动化D.实现软件可重用第10题以下叙述中不正确的是A.在不同的函数中可以使用相同的名字的变量B.函数中的形式参数是局部变量C.在一个函数内定义的变量只在本函数范围内有效D.在一个函数内的复合语句中定义的变量在本函数范围内有效第11题函数fseek(pf,OL,SEEK_END)中的SEEK_END代表的起始点是A.文件开始B.文件末尾C.文件当前位置D.以上都不对第12题C语言结构体类型变量在程序执行期间A.所有成员一直驻留在内存中B.只有一个成员驻留在内存中C.部分成员驻留在内存中D.没有成员驻留在内存中第13题以下对结构体类型变量的定义中,不正确的是A.typedef struct aa{int n;float m;}AA;AA tdl;B.#define AA struct aa AA{int n;float m;}tdl;C.struct{int n;float m;}aa;struct aatdl;D.struct{int n;float m;}tdl;第14题有如下程序main(){char ch[2][5]={"6937","8254"},*p[2];int i,j,s=0;for(i=0;i<2;i++)p[i]=ch[i];for(i=0;i<2;i++)for(j=0;p[i][j]>′\0′;j+=2)s=10*s+p[i][j]-′0′;printf("%d\n",s);}该程序的输出结果是A.69825B.63825C.6385D.693825第15题以下程序的输出结果是main(){int a=21,b=11;printf ("%d\n",--a+b,--b+a);}A.30B.31C.32D.331-5:D,D,A,B,B6-10:D,B,C,B,D11-15:B,AC,C,A第16题下列程序的输出结果是main(){double d=3.2;int x,y;x=1.2;y=(x+3.8)/5.0;printf("%d\n",d*y);}A.3B.3.2C.0D.3.07第17题若有条件表达式(exp)?a++:b--,则以下表达式中能完全等价于表达式(exp)的是A.(exp==0)B.(exp!=0)C.(exp==1)D.(exp!=1)第18题数据库设计包括两个方面的设计内容,它们是A.概念设计和逻辑设计B.模式设计和内模式设计C.内模式设计和物理设计D.结构特性设计和行为特性设计第19题表达式0x13^0x17的值是A.0x04B.0x13C.0xE8D.0x17第20题检查软件产品是否符合需求定义的过程称为A.确认测试B.集成测试C.验证测试D.验收测试16-20:CBAAA第21题下列关于字符串的说法中错误的是A.在C语言中,字符串是借助于字符型一维数组来存放的,并规定以字符′\0′作为字符串结束标志B.′\0′作为标志占用存储空间,计入串的实际长度C.在表示字符串常量的时候不需要人为在其末尾加入′\0′D.在C语言中,字符串常量隐含处理成以′\0′结尾第22题以下不能对二维数组a进行正确初始化的语句是A.int a[2][3]={0};B.int a[][3]={{1,2},{0}};C.int a[2][3]={{1,2},{3,4},{5,6}}; D.int a[][3]={1,2,3,4,5,6};第23题阅读下列程序,程序的输出结果是#include"stdio.h"main(){int m,n; float k;for(m=6;m>2;m--){k=0;for(n=m;n>1;n--)k=k+m*n;}printf("%f \n",k);}A.5.000000B.15.000000C.25.000000D.35.000000第24题下面程序段的运行结果是char a[]="lanuage",*p;p=a;while(*p!=′u′){printf("%c",*p-32);p++;}A.LANGUAGE B.language C.LAN D.langUAGE第25题阅读下面程序,则执行后的结果为#include"stdio.h"main(){char *str="abcdefghijklmnopq";while(*str++!=′e′);printf("%c\n",*str);} A.f B.a C.e D.q21-25:B,CBCA第26题设有数组定义:char array[]="China";则数组array所占的空间为A.4个字节B.5个字节C.6个字节D.7个字节第27题若变量c为char类型,能正确判断出c为小写字母的表达式是A.′a′<=c<=′z′B.(c>=′a′)||(c<=′z′)C.(′a′<=c)and(′z′>=c)D.(c>=′a′)&&(c<=′z′)第28题假设线性表的长度为n,则在最坏情况下,冒泡排序需要的比较次数为A.log2n B.n2C.O(n1.5)D.n(n-1)/2第29题下列合法的整型常量的表示是A.098B.oXde C.32767D.0xDG第30题下列函数的运行结果是main(){int i=2,p;int j,k;j=i;k=++i;p=f(j,k); printf("%d",p);}int f(int a,int b){int c;if(a>b)c=1;else if(a==b)c=0;else c=-1;return(c);}A.-1B.1C.2D.编译出错,无法运行26-30:CDDCA第31题已知int a=6;则执行a+=a-=a*a;语句后,a的值为A.36B.0C.-24D.-60第32题一些重要的程序语言(如C语言和Pascal语言)允许过程的递归调用。

江苏省二级C语言上机模拟试卷1及参考答案

江苏省二级C语言上机模拟试卷1及参考答案

江苏省二级C语言上机考试试卷-1(本试卷完成时间 70分钟)一、改错题(16分)【程序功能】合并两个一维升序数组,合并后的数组仍然保持升序。

【测试数据与运行结果】测试数据:数组1: 5,9,19数组2: 12,24,26,37,48运行结果:合并后的数组:5,9,12,19,24,26,37,48【含有错误的源程序】#include<stdio.h>void sort(int array[],int n){int i,j,t;for(i=1;i<n;i++){t=array[i];for(j=i;t<array[j]&&j>=0;j--)array[j+1]=array[j];array[j]=t;}}void merge(int *a1,n1,*a2,n2,*a3){int i=j=k=0;while(i<n1&&j<n2)if(a1[i]>a2[j])a3[k++]=a2[j++];elsea3[k++]=a1[i++];while(i<n1)a3[k++]=a1[i++];while(j<n2)a3[k++]=a2[j++];}int main(void){int s1[3],i,s2[5],s3[8];for(i=0;i<3;i++)scanf("%d",&s1[i]);for(i=0;i<5;i++)scanf("%d",&s2[i]);sort(s1,3);sort(s2,5);merge(s1,3,s2,5,s3);for(i=0;i<8;i++)printf("%3d", s3[i]);}【要求】1.将上述程序录入到文件myf1.c中,根据题目要求及程序中语句之间的逻辑关系对程序中的错误进行修改。

江苏省二级C语言考试模拟试题1(注只有C部分,没有公共基础部分)

江苏省二级C语言考试模拟试题1(注只有C部分,没有公共基础部分)

江苏省二级C语言考试模拟试题1〔注只有C局部,没有公共根底局部〕江苏省二级C语言考试模拟试题1(注:只有C局部,没有公共根底局部)-、选择题[请用答题卡答题,答案依次填在(21)-(30)答题号内] 21.有声明语句int x=8,那么以下表达式中,值为2的是(21). A.x+=x-=x B.x%=x-2C.x>8?x=0:x++D.x/=x+x 22.以下关于函数的表达中正确的选项是(22)A.在函数体中可以直接引用另一个函数中声明为static类别的局部变量的值B.在函数体中至少必须有一个return语句C.在函数体中可以定义另一个函数D.在函数体中可以调用函数自身23.假设有声明语句\那么以下对数组元素赋值的操作中,不会出现越界访问的是(23)A.a[-1]=0B.a[10]=0C.b[3][O]=0D.b[0][3]=024.数组和链表都可以用于存储一组彼此有关联的数据,以下说法中不正确的选项是(24) A.数组占用一块连续的存储区域,链表可能占用假设干块不连续的存储空间 B.数组和链表所占用的存储区域均不能在程序运行期间动态地分配 c.数组中的数据可以随机存取或顺序存取,链表中的数据只能顺序存取 D.数组的长度是固定的,链表的长度是不固定的 25.设有定义和声明语句: typedef struct dtype {int a;struct dtype *b; }node;static node x[3]={5,&x[1],7,&x[2],9,'\\0'},*prt= 以下选项中,表达式值不为5的是(25) A.x[1].b->a-2 B.ptr->b->a-2 C.(ptr+1)->a-2 D.ptr->a 26.在以下程序中,需要在main函数之后定义-个函数,以下选项中(26)可以用做该函数的名字#define p 3.14 int y; main() {int a=1; 函数名(a);... /*假设干执行语句*/ }int 函数名(int x) {return x*x;}A.mainB.yC.pD.print27.假设有声明语句\以下语句中有语法错误的选项是 (27) A.(*pc)++;B.ch+=-'a'+'A';C.toupper(ch)=ch;D.ch++;28.有语句\如果需要将变量x的值以文本形式保存到一个磁盘文件out.dat中,那么以下函数调用形式中正确的选项是(28) A.fprintf(\C.fprintf(\29.有声明语句\以下语句中(29)不能正确输出a数组全部元素的值A.for(p=a,i=0;i int convert(char s1[],char s2[]) { int i=0,j,s; char tab[8][4]={\ for(i=0,j=O;s1!='\\0';i++,j=j+3)strcpy(&s2[j],tab[s1-'0']); for(i=0,s=O;i #include void loop(int s,int m,int n,char *str); main() {char buf[81]; strcpy(buf,\loop(1,2,2,buf);puts(buf); } void loop(int s,int m,int n,char*str) { char c;int k;int i,len; len=strlen(str); for(i=O;i long invert(long x); main() {long n,c=0; printf(\ scanf(\ while((20)) {printf(\ n=n+invert(n);c++; while((21)) {n=n+invert(n);c++;} printf(\ } long invert(long x) /*生成并返回x的反序数*/ {long s; for(s=0;x>0; ( 22 ) ) s=s*10+x ; return s; } 14.某链表中结点的数据结构定义如下: struct node {int x; struct node*next; }; 函数find_del的功能是:在参数head指向的链表中查找并删除x值最大的结点,如有多个相同的x值最大的结点,删除第一个结点,保存该结点的地址到pm指向的指针变量中, 函数返回链表首结点的指针 struct node*find_del(struct node *head,struct node **pm) {struct node*p1,*p2,*pmax,*pre; if(head==NULL)return NULL; pmax=( 23 );p2=p1=pmax; while(p1) {if(p1->x>( 24 )) {pre=p2;pmax=p1;} p2=p1:p1=p1->next; }if(pmax==head)head=pmax->next; else ( 25 ) =pmax->next; ( 26 )=pmax; return head; } 15.以下程序对一组点坐标(x,y)按升序进行排序,要求:先按x 的值排序,假设x的值相同,那么按y的值排序,排序算法为选择法 #include #define N 5 typedef struct {int x,y;}POINT; void point_sort( (27) *x,int n) {POINT t; int i,j,k; for(i=0;i(x[j].x))k=j; elseif((30)&&x[k].y>x[j].y)k=j; if(k!=i)t=x,x=x[k],x[k]=t; } } main() {POINT a[N]={0}; int i=0; while(i (5)a的地址 (6)6 (7)1 (8)1 (9)2 (10)1 (11)2 (12)3 (13)13 (14)001101 (15)The result is:365 (16)s (17)len (18)k+m (19)str[k] (20)nx (25)pre->next (26)*pm (27)POINT (28)k=i (29)i+1 (30)x[k].x==x[j].x。

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

2009江苏省计算机等级考试C语言考前冲刺模拟试卷1基础部分1.下列关于信息的叙述错误的是____(1)__。

A.信息是指事物运动的状态及状态变化的方式B.信息是指认识主体所感知或所表述的事物运动及其变化方式的形式、内容和效用C.在计算机信息系统中,信息是对用户有意义的数据,这些数据将可能影响到人们的行为与决策D.在计算机信息系统中,信息是数据的符号化表示2.下列关于集成电路的叙述中错误的是____(2)____。

A.将大量晶体管、电阻及互连线等制作在尺寸很小的半导体单晶片上就构成集成电路B. 现代集成电路使用的半导体材料通常是硅或砷化镓C. 集成电路根据它所包含的晶体管数目可分为小规模、中规模、大规模、超大规模和极大规模集成电路D. 集成电路按用途可分为通用和专用两大类。

微处理器和存储器芯片都属于专用集成电路3.移动通信指的是处于移动状态的对象之间的通信,下面的叙述中错误的是__(3)______。

A.移动通信始于上世纪20年代初,70~80年代开始进入个人领域B.移动通信系统进入个人领域的主要标志就是手机的广泛使用C.移动通信系统由移动台、基站、移动电话交换中心等组成D.目前广泛使用的GSM是第三代移动通信系统4.下列不同进位制的四个数中,最小的数是__(4)______。

A.二进制数1100010B. 十进制数65C. 八进制数77D. 十六进制数455.下面是关于PC机主存储器的一些叙述,其中正确的是_____(5)____A.主存储器每次读写一个字节(8位)B.主存储器也称内存,它是一种动态随机存储器C.目前市场上销售的pC机器,其内存容量多数已达128MBD.PC机的容量总是可扩充的A.①③B.①②③C.①④D.②③④6.下面关于USB接口的叙述中,错误的是____(6)______B2.0的数据传输速率比USB1.1快的多B具有热插拔和即插即用功能C.主机不能通过USB连接器向外围设备供电D.从外观上看,USB连接器要比PC机的串行口连接器小7.下列关于目前流行的台式PC机主板的叙述,正确的是_______(7)____①主板上通常包含微处理器插座和芯片组②.主板上通常包含内存储器(内存条)插槽和BIOS ROM芯片③.主板上通常包含PCI(或PCI-E)总线插槽④.主板上通常包含IDE(或SATA)连接器A.①③ B. ①②③ C. ①④ D. ①②③④8.为了读取硬盘存储器上的信息,必须对硬盘盘片上的信息进行定位,在定位一个扇区时,不需要以下参数中的_____(8)___。

A.柱面(磁道)号B.盘片(磁头)号C.通道号D.扇区号9.下列各类存储器中,____(9)____在断电后其中的信息不会丢失。

A.寄存器 B. Cache C. Flash ROM D. DDR SDRAM10. 下列关于操作系统处理器管理的说法中,错误的是____(10)___ 。

A.处理器管理的主要目的是提高CPU的使用效率B.分时是指将CPU时间划分成时间片,轮流为多个程序服务C.并行处理操作系统可以让多个CPU同时工作,提高计算机系统的效率D.多任务处理都要求计算机必须有多个CPU11.在下列有关程序设计语言及其处理程序的叙述中,错误的是_(11)_。

A.用多种不同的汇编语言编写一个程序称为"交叉汇编"B.汇编语言是一种用助记符号表示的、与机器语言接近的符号语言C.机器语言指令是由一串“0”和“1”组成的二进位代码D.编译程序应具有词法分析和语法分析功能12.以下关于局域网和广域网的叙述中,正确的是____(12)___。

A.广域网只是比局域网覆盖的地域广,它们所采用的技术是相同的B.家庭用户拨号入网,既可接入广域网,也可接入局域网C.现阶段家庭用户的PC机只能通过电话线接入网络D.个人不允许组建计算机网络13.将异构的计算机网络进行互连通常使用的网络互连设备是_____(13)___。

A. 网桥B. 集线器C. 路由器D. 中继器14.在TCP/IP网络中,任何计算机必须有一个IP地址,而且__(14)______A. 任意两台计算机的IP地址不允许重复B. 任意两台计算机的IP地址允许重复C. 不在同一城市的两台计算机的IP地址允许重复D. 不在同一单位的两台计算机的IP地址允许重复15. 当网络中的两台计算机之间需要互相传送多个文件时,一般应使用_______(15)____服务A.wwwB.TelnetC.FTPD.电子邮件16. 在浏览器的地址栏中输入想要浏览的网页URL时,不能缺省的输入是___(16)_____A.执行的传输协议B.网页所在的Web服务器的域名或IP地址C.端口号D.网页的文件名和查找路径17. 下面关于我国汉字编码标准的叙述中,错误的是__ (17)_________A.GB2312国标字符集所包含的汉字许多情况下已不够使用B.GBK字符集既包括简体汉字,也包括繁体汉字C.GB18030编码标准中所包含的汉字数目超过2万个D.无论采用上述哪一种汉字编码标准,汉字在计算机中均采用双字节编码18. 下列关于计算机合成图像(计算机图形)的应用中,错误的是__(18)_______。

A.可以用来设计电路图B.可以用来生成天气图C.计算机只能生成实际存在的具体景物的图像,不能生产虚拟景物的图像D.可以制作计算机动画19.计算机中用于描述乐谱并由声卡合成出乐曲的一种专用语言,称为_____(19)_____A.MP3B.JPEG2000C.MIDID.XML20.在PC机中安装视频输入设备就可以获取数字视频,下面关于视频获取设备的叙述中,错误的是____(20)_________A.视频卡能通过有线电视电缆接收模拟电视信号并进行数字化B.视频卡一般插在PC机的PCI插槽内C.数字摄像头必须通过视频卡与PC机相连接D.数字摄像头拍摄的数字视频可通过USB或IEEE1394接口直接输入计算机C语言部分二:c语言程序设计21.一个用c语言编写的程序,____________是必不可少的A.取名为main的函数定义B.#include <stdio.h>C.变量声明D.注释22.已有枚举类型定义:"enum letter{A,B,C=7,D,E};",以下表达式中除(22)外,其他表达式的机内值均等于10。

A.'\xb'-1 B.B+E C.010+2 D•0xf-323.以下声明中正确的是(23) 。

A.int n=2,a[n]={10}; B.int n=10,*p[2]=&n;C.int n=10,a[2]={n};D.int a[2][2]={lO},(*p)[2]=a+1;24.若有函数fun的定义为void fun(…){static int a=1;...}则下列叙述中不正确的是 ( 24) 。

A.在每次调用fun函数时,变量a的值是上次调用结束时a的值B.在fun函数之外,可以用变量名a直接引用a的值c.在其他函数中,可以出现声明double a=2.5;D.fun函数的形式参数不能取名为a25.已知数据类型定义和变量声明如下:struct sk{int a;float b;} data[2],*p;若有P=data,则以下对data[0]中成员a的引用中错误的是:(25)。

A.data[0]->a B.data->a C.P->a D.(*p).a26.以下单目运算符均只需妻一个操作数,其中要求操作数的类型只能是指针型的是(26) 。

A.& B.++ C.! D.*27.已知有声明"int good=1;",若要使得表达式"P="good"+good"无语法错误(包括警告错误),P应当声明为( 27)。

A.char p; B.char *p; C.int p;D.int*p;28.已知有声明"char c='1',;int x=300;float t=35000;double d=3.1234567e10;",则以下表达式求值时除 ( 28 ) 外其结果都可能是不准确的。

A.x=t/c B.t=d/x C.t=d/le5f D.t=x+c29.已有预处理命令和声明如下:#define N 10int a=2,c=1;double b=1.2:下述程序段正确的是(29)。

A.switch(a) B.switch(a){case c: a--;break; {case N>0:a=1;break;case c+1:a++;break; case 1: a=O;break;} }C. switch(a)D.switch(b){ { case 1.0: b++;break;case 2: b++;break; case 1.2: b=1;break;case '0': b=3; }}30.若有以下声明和定义:void fun(int c){prinff("%d",C);}main(){void(*a)(int)=fun,*b(int),(*c)(int);/*调用fun函数语句位置*/}void*b(int C){}。

如果在main函数中需要调用fun函数,以下调用语句中错误的是_______(30)______ 。

A.fun(1); B.(*a)(1); C.b=fun;(*b)(1);D.c=a;(*c)(1);二、填空题(请将答案填写在答题纸的相应答题号内,每个答案只占一行)●基本概念题(共5分)1.若有声明"char a=0;int b=1;float c=2;double d=3;",则表达式"c=a+b+c+d"值的类型为(1) 。

2.若某个程序运行时创建了多个输入流,当执行到程序中的scanf函数时,只有在 (2)输人流为空时才会暂停程序运行而等待输入。

.3.执行"printf("%d,%d",i,j,k,m);"后在屏幕上将输出_____(3)______个整数。

4.设已有非空文本数据文件filel.dat,要求能读出文件中原有的全部数据,并在文件原有数据之后添加新数据,则用FILE *fp=fopen("filel.dat", ____(4)_________ )打开该文件。

5.若有函数定义int f(){int x=4,y=3,z=2;return x,y,z;},则调用函数f后的返回值是(5)●阅读程序题(共13分)6.以下程序运行时输出结果是 (6 ) 。

相关文档
最新文档