全国计算机等级考试二级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 aa
tdl;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);}
计算机二级考c语言吗A.30B.31C.32D.33
1-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.q
21-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语言)允许过程的递归调用。而实现递归调用中的存储分配通常用
A.栈B.堆C.数组D.链表
第33题在C语言中,退格符是
A.\n B.\t C.\f D.\b
第34题请选出正确的程序段
A.int*p;scanf("%d",p);…B.int*s,k;*s=100;…C.int*s,k;char*p,c;s=&k; p=&c;*p=′a′;…D.int*s,k;char*p,e;s=&k;p=&c;s=p;*s=1;…
第35题若已定义:int a=25,b=14,c=19;以下三目运算符(?:)所构成语句的执行后a<=25&&b--<=2&&c?printf("***a=%d,b=%d,c=%d\n",a,b,c):printf ("###a=%d,b=%d,c=%d\n",a,b,c);程序输出的结果是
A.***a=25,b=13,c=19B.***a=26,b=14,c=19C.###a=25,b=13,c=19D.### a=26,b=14,c=19
31-35:DADCC
第36题有以下程序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,3
第37题下列程序执行后的输出结果是void func1(int i);void func2(int i);char st[]="hello,friend!";void func1(int i){printf("%c",st[i]);if(i<3){i+=2;func2(i);}}void func2(int i){printf("%c",st[i]);if(i<3){i+=2;func1(i);}} main(){int i=0;func1(i);printf("\n");}
A.hello B.hel C.hlo D.hlm
第38题若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是A.函数调用可以作为独立的语句存在B.函数调用可以作为一个函数的实参C.函数调用可以出现在表达式中D.函数调用可以作为一个函数的形参
第39题有如下程序main(){int a=2,b=-1,c=2;if(aif(b<0)c=0;else c++;printf ("%d\n",c);}该程序的输出结果是
A.0B.1C.2D.3
第40题以下程序段的描述,正确的是x=-1;do{x=x*x;}while(!x); A.是死循环B.循环执行两次C.循环执行一次D.有语法错误
36-40:CCDCC
第41题C语言中while和do-while循环的主要区别是
A.do-while的循环体至少无条件执行一次B.while的循环控制条件比do-while 的循环控制条件更严格C.do-while允许从外部转到循环体内D.do-while的循环体不能是复合语句
第42题模块独立性是软件模块化所提出的要求,衡量模块独立性的度量标准则是模块的
A.抽象和信息隐蔽B.局部化和封装化C.内聚性和耦合性D.激活机制和
控制方法
第43题现有int a,*b;,b=&a;,则下列运算错误的是
A.*&a B.&*a C.*&b D.&*b
第44题现有如下程序段#include"stdio.h"main(){int a[5][6]
={23,3,65,21,6,78,28,5,67,25,435,76,8,22,45,7,8,34,6,78,32,4,5,67,4,21,1};int i=0,j=5;printf("%d\n",*(&a[0][0]+2*i+j-2));}则程序的输出结果为A.21B.78C.23D.28
第45题下列说法中错误的是
A.只能在循环体内使用break语句B.在循环体内使用break语句可以使流程
跳出本层循环体,从而提前结束本层循环C.在while和do…while循环中,
continue语句并没有使整个循环终止D.continue的作用是结束本次循环,即跳
过本次循环体中余下尚未执行的语句,接着再一次进行循环判断
41-45;ACBAA
第46题下面程序是指从终端读入的20个字符放入字符数组中,然后利用指针变量输出上述字符串,请填空。#include<stdio.h>main(){int i;char? s[21],*p;for(i=0;i<20;i++)s[i]=getchar();s[i]=【6】;p =【7】while(*p)putchar?(【8】);}
第47题以下程序的输出结果是【17】。main(){int y=9;for(;y>0;y--)if(y%3==0){printf("%d",--y);continue;}}
第48题在面向对象方法中,类之间共享属性和操作的机制称为【2】
第49题阅读下面程序,则程序的执行结果为【10】。#include"stdio.h" main(){int a=30,b=20,z;z=fun(a+b,a-b);printf("%d\n",z);}fun (int a,int b){int z;z=a/b;return z;}
第50题若有以下说明和定义语句,则变量w在内存中所占的字节数是【19】。union aa{float x;float y;char c[6];};struct st{union aa v;float w[5];double ave;}w;
第51题下面程序把从终端读入的文本(用@作为文本结束标志)输出到一个名为bi.dat的新文件中,请填空。#include"stdio.h"FILE*fp;{char ch;if ((fp=fopen(()))==NULL)exit(0);while((ch=getchar())!='@')fputc (ch,fp);fclose(fp);}
第52题函数void fun(float*sn,int n)的功能是:根据以下公式计算S,计算结果通过形参指针sn传回;n通过形参传入,n的值大于等于0。请填空。void fun(float*sn,int n){float s=0.0,w,f=-1.0;int i=0;for (i=0;i<=n;i++){f=()*f;w=f/(2*i+1);s+=w;}()=s;}第53题当循环队列非空且队尾指针等于队头指针时,说明循环队列已满,不能进行入队运算。这种情况称为【2】。
第54题数据结构分为逻辑结构与存储结构,线性链表属于【1】。
第55题软件工程研究的内容主要包括:【4】技术和软件工程管理。
第56题阅读下面语句,则程序的执行结果是【7】。#include"stdio.h"main (){int a=-1,b=1,k;if((++a<0)&&!(b--<=0))printf("%d,%d\n",a,b);else
printf("%d,%d\n",b,a);}
第57题函数my_cmp()的功能是比较字符串s和t的大小,当s等于t时返回0,否则返回s和t的第一个不同字符的ASCII码差值,即s>t时返回正值,当s<t时返回负值。请填空。my_cmp(char*s,char*t){while(*s==*t){if(*s==′\0′)return0;++s;++t;}return【18】;}
第58题以下程序的功能是从健盘输入若干学生的成绩,并输出最高成绩和最低成绩,当输入负数时结束。请填空。main(){float x,amax,amin;scanf ("%f",&x);amax=x;amin=x;while(【7】){if(x>amax)amax=x;elseif【8】amin=x;else scanf("%f",&x);}printf("\n amax=%f\n amin=%f\n",amax,amin);}
第59题设int a,b=10;执行a=b<<2+1;后a的值是【15】
第60题设i,j,k均为int型变量,则执行完下面的for语句后,k的值为【14】。for(i=0,j=10;i<=j;i++,j--)k=i+j;
第61题软件结构是以【3】为基础而组成的一种控制层次结构。
第62题当调函数frend从磁盘文件中读取数据时,若函数数的返回时为5,则表明【19】;若函数的返回值为0,则表明【20】。
第63题下列x的值是【7】。int x;x=sizeof2.25*4;
第64题阅读下面程序,则程序的执行结果为【19】。#include"stdio.h" fun(int k,int*p){int a,b;if(k==1||k==2)*p=1;else{fun(k-1,&a); fun(k-2,&b);*p=a+b;}}main(){int x;fun(6,&x);printf("%d \n",x);}
第65题阅读下面程序,则在执行时候的输出为【8】。#include"stdio.h" main(){int x=1,y=2,z=0;if(x=2)z=x,x=y,y=z;printf("%d,%d\n",x,y);}

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。