计算机水平考试模拟试卷2(二级C)
一、单项选择题(每题1分,共40分)
1、计算机能直接执行由_______编写的源程序。
A)机器语言 B)汇编语言 C)C语言 D)FORTRAN语言 2、在计算机内存中,每个存储单元都有一个唯一编号,该编号被称为_____。 A)标号 B)记录号 C)容量 D)地址 3、将十进制数93转换成八进制数为______。 A)(107)8 B)(127)8 C)(135)8 D)(140)8 4、Cache(高速缓存)能提高计算机的运行速度,主要原因是_______。 A)它扩展了内存的容量 B)它缩短了CPU的存取时间 C)它扩展了外存的容量 D)它提高了计算机的主频 5、下面关于控制面板的描述中,错误的是______。 A)控制面板可以管理硬件,但不可以管理软件 B)控制面板可以添加、删除程序 C)控制面板可以添加、删除硬件
D)控制面板可以更改系统的时间和日期 6、________是多媒体计算机系统必备的设备。
A)网卡 B)扫描仪 C)声卡 D)打印机 7、下列属于网络拓扑结构的是________。
A)动态型 B)静态型 C)交叉型 D)总线型 8、若要浏览某个网页,则需要在浏览器的_______中输入网址。
A)地址栏 B)标题栏 C)任务栏 D)状态栏 9、使用杀毒软件可以__________。
A)查出任何已感染的病毒 B)查出并清除任何病毒 C)清除部分病毒 D)清除已感染的任何病毒 10、计算机操作系统的主要功能是_______。
A)进行网络连接 B)管理计算机资源,方便用户使用
C)实现数据共享 D)把高级语言的源程序代码转换为目标代码 11、下列关于C语言程序书写规则说法中正确的是_______。 A)不区分大小写字母 B)一行只能写一条语句 C)一条语句可分成几行书写 D)每行必须有行号 12、以下不能作为C语言常量的是______。
A)0582 B)2.5e-2 C)3e2 D)0xA5 13、以下不符合标识符规定的是_______。
A)_sum B)sum C)3cd D)Void 14、下列可以正确表示字符常量的是_______。
A)”t” B)’\\t’ C)”\\t” D)t 15、在C语言中,要求操作数不能是实型的运算符是_______。 A)%= B)/= C)!= D)++
16、设有int a=1,b=2,c=1;,则表达式a?a+b:a+c的值是______。 A)0 B)1 C)2 D)3
17、设有int a=2,b=6;,则表达式a*b/5的值是______。 A)2 B)3 C)2.4 D)3.6 18、已知int i;float f;,则以下正确的语句是______。
A)(int f)%i; B)int(f)%i; C)int (f%i) ; D)(int)f%i 19、设变量x,y,均为int 类型,则下面程序段的输出结果是_______。
26/48
x=6; y=x++; ++y;
printf(“%d”,y); A)9 B)8 C)7 D)6
20、已知int a=6,b=8,c=3;,则逻辑表达式a>b&&++c运算后,c的值是______。
A)1 B)2 C)3 D)4
21、已知int x=2,y=-1,z=3;,执行下面语句后,z的值是_______。 If(x A)1 B)2 C)3 D)4 22、下面程序运行结果为______。 #include int a=1; if (!a) printf(“YES”); else printf(“NO”); } A)NO B)YES C)YESNO D)提示运行错误 23、有以下程序段: int a,b,c; a=1;b=2;c=3; if(a>b) c=a;b=c; printf(“a=%d,b=%d,c=%d\\n”,a,b,c); 程序运行结果为_______。 A)a=1,b=3,c=3 B)a=1,b=3,c=2 C)a=1,b=2,c=3 D)a=2,b=1,c=1 24、for(表达式1;;表达式3)可理解为______。 A)for(表达式1;0;表达式3) B)for(表达式1;1;表达式3) C)for(表达式1;表达式1;表达式3) D)for(表达式1;表达式3;表达式3) 25、执行语句for(i=1;i<6;i+=2);后,变量i的值是______。 A)5 B)6 C)7 D)8 26、有如下程序: #include int s=1,i; for(i=1;i<=5;i++) s=s*i; printf(“%d\\n”,s); } A)6 B)120 C)240 D)2 27、运行下面程序: #include void main( ) 27/48 { char p[]=”12345\\0QQ\\0”; printf(“%d\\n”,strlen(p)); } 输出结果为________。 A)8 B)7 C)6 D)5 28、以下能正确定义一维数组的选项是_______。 A)int num[ ]; B)#define N 100 C)int num[0..100]; D)int N=100; int num[N]; int num[N]; 29、下列能正确对字符串s进行初始化操作的是______。 A)char s[5]={‘C’,’H’,’I’,’N’,’A’,’\\0’}; B)char s[5]={“CHINA”}; C)char s[ ]=”CHINA”; D)char s[5];s[0]=’C’;s[1]=’H’; s[2]=’I’;s[3]=’N’; s[4]=’A’;s[5]=’\\0’; 30、若有int a[3][4];,则对a数组元素非法引用的是_______。 A)a[0][2+1] B)a[0][4] C)*(*(a+2)+3) D)a[1][2] 31、当调用函数时,若实参是一个数组名,则向函数传送的是______。 A)数组的长度 B)数组的首地址 C)数组每一个元素的地址 D)数组每个元素中的值 32、C语言中,如果在定义函数时没有指定函数的类型,系统会隐含指定______型。 A)int B)char C)float D)static 33、一个源文件中定义的全局变量的作用域是_____。 A)本函数的全部范围 B)本程序的全部范围 C)本文件的全部范围 D)从定义开始至本文件结束 34、设有以下函数首部: int func (double x[10],int n) 如果在程序中需要对该函数进行声明,则以下选项中错误的是______。 A)int func(double x[],int n); B)int func( double ,int); C)int func(double x[10],int n); D)int func(double *x,int n); 35、类型相同的两个指针变量之间不能进行的运算是_______。 A)+ B)= C)< D)- 36、若有int m=5,n,*p1=&m,*p2=&n;,能将5赋值给n的是______。 A)p2=*p1; B)*p1=*p2; C)p2=p1; D)*p2=*p1; 37、设有int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;,则p[6]的值是_______。 A)5 B)6 C)7 D)8 38、设有: struct student { char name[10]; int age; char sex; }std={“Li Ming”,19,’M’},*p; p=&std; 则下面各输出语句中错误的是______。 A)printf(“%d”,(*p).age); B)printf(“%d”,p->age); B)printf(“%d”,stu.age); D)printf(“%d”,p.age); 28/48 39、已知int x=28;,则执行语句printf(“%d\\n”,x<<1);后的结果为_______。 A)34 B)14 C)70 D)56 40、以读写方式打开一个已存在的文本文件file1.txt,以下选项正确的是________。 A)FILE *fp;fp=fopen(“file1.txt”,”r+”); B)FILE *fp;fp=fopen(“file1.txt”,”w”); C)FILE *fp;fp=fopen(“file1.txt”,”r”); D)FILE *fp;fp=fopen(“file1.txt”,”rb+”); 二、填空题(每空2分,共20分) 1、在C语言中整型常数可用十进制、八进制和___________进制三种数制表示。 2、已知int i,a;,执行语句i=(a=6,a*3),a+5;后,变量i的值是_______。 3、已知int x=20;,执行语句x=x+6.28;后,变量x的数据类型是________。 4、若有int i;,则执行语句i=4>3>2;后,i的值为________。 5、以下程序段的功能为:从键盘上输入一个正整数n并判断其是否为素数,请填空。 int n,i; printf(“请输入一个正整数n:\\n”); scanf(“%d”,&n); for((i=2;i<=n-1;i++) if(n%i==0) break; if(i_________n) printf(“%d是素数\\n”,n); else printf(“%d不是素数\\n”,n); 6、已知int k=8;,则下面while循环执行的次数为____________。 while(k==2) k=k-1; 7、下列程序执行后的输出结果为________。 #include void main( ) { int a=2,b=3; printf(“%d”,M(a+b)); } 8、在C标准库函数中,常用的字符串连接函数是________。 9、若有如下定义,则变量w在内存中所占的字节数是_______。 union aa{float x;char c[2];}; struct st{ union aa v;float y;double z;}w; 10、若fp是指向某二进制文件的指针,且未指到文件末尾,则!feof(fp)的值是_______。 三、阅读理解题(每小题4分,共20分) 1、以下程序的运行结果为_____________________。 #include 29/48 printf(“%d,%c\\n”,a,a); printf(“%f,%.4f\\n”,f,f); return 0; } 2、以下程序的运行结果为_____________________。 #include switch(i%5) { case 1: case 2:s++;break; case 3: case 4:s--;break; default:s++; } printf(“%d\\n”,s); return 0; } 3、以下程序的运行结果为_____________________。 #include a[0][i]=i*2; a[1][i]=i+2; } printf(“%d\\n”,a[0][1]*a[1][3]); return 0; } 4、以下程序的运行结果为_____________________。 #include return(x+y); } int main( ) { int s; s=fun(1); printf(“%d\\n”,s); s=fun(s); printf(“%d\\n”,s); 30/48