二级C语言程序设计理论摸底测验试题.docx

上传人:scccc 文档编号:13626159 上传时间:2022-01-20 格式:DOCX 页数:8 大小:87.54KB
返回 下载 相关 举报
二级C语言程序设计理论摸底测验试题.docx_第1页
第1页 / 共8页
二级C语言程序设计理论摸底测验试题.docx_第2页
第2页 / 共8页
二级C语言程序设计理论摸底测验试题.docx_第3页
第3页 / 共8页
二级C语言程序设计理论摸底测验试题.docx_第4页
第4页 / 共8页
亲,该文档总共8页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《二级C语言程序设计理论摸底测验试题.docx》由会员分享,可在线阅读,更多相关《二级C语言程序设计理论摸底测验试题.docx(8页珍藏版)》请在三一文库上搜索。

1、二级 C语言程序设计理论摸底测验试题1 / 8作者:日期:2 / 8个人收集整理,勿做商业用途二级 C 语言程序设计理论摸底考试试题一、选择题( 11)(20)每题 1 分,其余每题 2 分,共 70 分)(1)算法的空间复杂度是指A)算法程序的长度B)算法程序中的指令条数C)算法程序所占的存储空间D)算法执行过程中所需要的存储空间(2)栈和队列的共同特点是A)都是先进先出B)都是先进后出C)只允许在端点处插入和删除元素D)没有共同点(3)设有下列二叉树:AT XB C PZY对此二叉树前序遍历的结果为A)ZBTYCPXA B )ATBZXCYP C )ZBTACYXP D)ATBZXCPY(

2、4)结构化程序设计主要强调的是A)程序的规模 B)程序的效率 C)程序设计语言的先进性 D)程序易读性(5)下列叙述中正确的是A)一个算法的空间复杂度大,则其时间复杂度也必定大B)一个算法的空间复杂度大,则其时间复杂度必定小 C)一个算法的时间复杂度大,则其空间复杂度必定小 D)上述三种说法都不对(6)下列不属于软件工程的3 个要素的是A)工具B)过程 C)方法D)环境(7)软件开发离不开系统环境资源的支持,其中必要的测试数据属于A)硬件资源 B)通信资源 C)支持软件 D)辅助资源(8)下述关于数据库系统的叙述中正确的是A)数据库系统减少了数据冗余B)数据库系统避免了一切冗余C)数据库系统中

3、数据的一致性是指数据类型一致D)数据系统比文件系统能管理更多的数据(9)下列数据模型中,具有坚实理论基础的是A)层次模型B)网状模型C)关系模型D)以上 3 个都是(10)相对于数据库系统,文件系统的主要缺陷有数据关联差、数据不一致和A)可重用性差B)安全性差C)非持久性D)冗余性(11)算法中,对需要执行的每一步操作,必须给出清楚、严格的规定。这属于算法的A)正当性 B)可行性 C)确定性 D)有穷性(12)下列关于标识符的说法中错误的是3 / 8个人收集整理,勿做商业用途A)合法的标识符是由字母、数字和下划线组成 B)C 语言的标识符中,大写字母和小写字母被认为是两个不同的字符 C)C 语

4、言的标识符可以分为三类,即关键字、预定义标识符和用户标识符 D)用户标识符与关键字不同时,程序在执行时将给出出错信息(13)判断 char 型变量 c1 是否为大写字母的正确表达式是A)A =c1=A)&(c1=c1)|(Z=c1) D)(c1= A)&(c1= Z(14)有以下程序int add(int a,int b)return (a+b);Main() int k,(*f)( ),a=5,b=10;f=add;则以下函数调用语句错误的是A) k=(*f)(a,b);B)k=add(a,b) C)k=*f(a,b); D)k=f(a,b);(15)若变量已正确定义并赋值,以下合法的 C

5、语言赋值语句是A)x=y= =5;B)x=n%2.5;C)x+n=i;D)x=5=4+1(16)下列程序的输出结果是Main() double d=3.2;int x,y;x=1.2 ;y=(x+3.8)/5.0 ;printf( %dn,d*y) ;A)3 B)3.2 C) 0 D)3.07(17)设有以下程序段int x=0,s=0 ;while( !x !=0)s+=+x ;printf( %d,s) ;则A)运行程序段后输出0 B)运行程序段后输出1 C)程序段中的控制表达式是非法的D )程序段执行无限次(18)以下程序执行后x 的值是main() int x,y=252,i=386,

6、*m=&y,*z=&i;x=(z= =y);printf(“%d”,x) ;A)252 B)1 C)0 D)运行时出错, x 无定值(19)有如下程序main() float x=2.0,y ;if(x10.0)y=1.0/x ;else y=1.0 ;printf( %fn ,y) ; 该程序的输出结果是A)0.000000 B)0.250000 C)0.500000 D)1.000000(20)以下程序的输出结果是 #includemain() int a=15,b=21,m=0 ;switch(a%3) case 0:m+;break;case 1:m+;switch(b%2) defa

7、ult:m+;case 0:m+;break;printf( %dn,m);A)1 B)2 C)3 D)4(21)如下程序的输出结果是#include4 / 8个人收集整理,勿做商业用途main( )char ch25= “ 6937 ” , ” 8254 ” ,*p2;inti,j,s=0;for(i=0;i2;i+)pi=chi;for(i=0;i0 ;j+=2)s=10*s+pij- 0;printf( “%dn”,s);A)69825 B)63825 C)6385 D)693825(22)下面程序的运行结果是#includemain()inta=28,b;chars10,*p;p=s;

8、dob=a%16;if(b0);*p= 0;puts(s);A)10 B)C2 C)C51 D)0(23)下列程序执行后的输出结果是void func1(int i);void func2(int i);char st =”hello,friend! ”;void func1(int i) printf( “%c”,sti);if(i3)i+=2;func2(i); void func2(int i) printf( “%c”,sti);if(i3)i+=2;func1(i);main( ) int i=0;func1(i);printf( “n”);A)hello B)hel C)hle D

9、)hlm(24)以下程序的输出结果是#includevoid prt(int *x,int *y,int *z)printf(“%d,%d,%dn”,+*x,+*y,*(z+);main( ) int a=10,b=40,c=20 ;prt(&a,&b,&c) ;prt(&a,&b,&c) ;A)11,42,31B)11,41,20C)11,21,40D)11,41,2112.22,4112,42,2011,21,2112,42,22(25)下列二维数组初始化语句中,正确且与语句float a 3=0,3,8,0,9; 等价的是A)floata2=0,3,8,0,9;B)floata3=0,3

10、,8,0,9,0;C)floata3=0,3,8,0,9,0;D)float a2 =0,3,8,0,9,0;(26)以下程序输出的结果是#include#includemain( ) char w 10= “ABCD ”,”EFGH”,”IJKL ”,”MNOP”,k;for(k=1;k3;k+)printf( “%sn”,&wkk);A)ABCDB)ABCC)EFGD)FGHFGHEFGJKKLKLIJ0M5 / 8个人收集整理,勿做商业用途(27)下面能正确进行字符串赋值操作的是A)char s5= “ABCDE ”;B)char s5= A,b,C,D,E;C)char *s;s=”A

11、BCDE ”;D)char *s;scanf(“ %s”,s);(28)有以下程序main( ) int i,s=0,t =1,2,3,4,5,6,7,8,9;for(i=0;i9;i+=2)s+=*(t+i);printf(“%dn”,s);程序执行后的输出结果是A)45 B)20 C)25 D)36(29)以下程序中调用 scanf(函数给变量 a 输入数值的方法是错误的,其错误原因是 main( ) int *p,*q,a,b;p=&a;printf( “input a:”);scanf(“%d”,*p);A)*p 表示的是指针变量p 的地址 B)*p 表示的是变量 a 的值,而不是变量

12、a 的地址C)*p 表示的是指针变量p 的地址D)*p 只能用来说明p 是一个指针变量(30)阅读下列程序,则在执行后,程序的运行结果为#include#includemain( )char a30= ”nice to meet you!”;strcpy(a+strlen(a)/2,”you”);printf( “%sn”,a);A)nice to meet you you B)nice to C)meet you you D)nice to you(31)若有下面的程序片段 :int a12=0,*p3,*pp,i;for(i=0;i(B)?(A):(B)#define PRINT(Y) p

13、rintf( “Y=%dt ”,Y)main( ) int a=1,b=2,c=3,d=4,t;t=MAX(a+b,c+d);PRINT(t);A)Y=3 B) 存在语法错误C)Y=7 D)Y=0(35)以下程序的功能是进行位运算main( ) unsigned char a,b ;a=73 ;b=4&3 ;printf(“%d%dn” ,a,b);6 / 8个人收集整理,勿做商业用途程序运行后的输出结果是A)4 3 B)7 3 C)7 0 D)4 0(36)请选出以下程序的输出结果#includevoid sub(int *,int);main( ) int a =1,2,3,4,i;int

14、 x=0;for(i=0;i4;i+)sub(a,x);printf( “%d”,x);printf ( “n”); void sub(int *s,int y) static int t=3;y=st;t- -;A)1234B)4321C)0000D)4444(37)以下程序的输出结果是#includestructstintx;int*y;*p;intdt4=10,20,30,40;structstaa4=50,&st0,60,&dt0,60,&dt0,60,&st0,;main( ) p=aa;printf( “%dn”,+(p-x);A)10 B)11 C)51 D)60(38)以下 s

15、canf 函数调用语句中对结构变量成员的引用不正确的是 struct pupil char name20;int age;int sex;pup5,*p;p=pup;A)scanf(“%s”,pup0.name); B)scanf(“%d”,&pup0.age); C)scanf(“%dT”,&(p- sex); D)scanf(“%d”,p-age);(39)fwrite 函数的一般调用形式是A)fwrite(bufer,count,size,fp);B)fwrite(fp,size,count,buffer);C)fwrite(fp,count,size,buffer);D)fwrite(

16、buffer,size,count,fp);(40)函数 rewind 的作用是A) 使文件位置指针重新返回文件的开始位置 B) 将文件位置指针指向文件中要求的特定位置 C)使文件位置指针指向文件的末尾 D)使文件位置指针自动移至下一个字符位置二、填空题 (每空 2 分,共 30 分)(1)长度为 n 的顺序存储线性表中,当在任何位置上插入一个元素概率都相等时,插入一个元素所需移动元素的平均个数为【 1】.n/2(2)数据结构分为线性结构和非线性结构,带链的队列属于【2】。线性结构(3)软件工程研究的内容主要包括:【3】技术和软件工程管理。软件开发技术(4)常用的黑箱测试有等价分类法、【4】、

17、因果图法和错误推测法4 种。边界值分析法(5)数据库保护分为:安全性控制、【5】、并发性控制和数据的恢复。完整性控制(6)以下程序中,函数fun 的功能是计算 x2-2x+6,主函数中将调用fun 函数计算:22y1=(x+8) -2(x+8)+6y2=sin (x)-2sin(x)+6 请填空#includedouble fun(double x)return(x*x-2*x+6) ;7 / 8个人收集整理,勿做商业用途main( ) double x,y1,y2;printf( “ Enter x: ” );scanf(“ %lf ” ,&x);y1=fun( 【 6 】 ) ;y2=fu

18、n(【7】);printf( “y1=%lf,y2=%lfn ”,y1,y2);(7)以下 isprime 函数的功能是判断形参 a 是否为素数,是素数,函数返回1,否则返回 0。请填空。int isprime(int a) int i ;for(i=2 ;ij)printf(“%dn”,s);break;s+=i;(9)以下程序的输出结果是【11】。main( ) char *p = “ BOOL ” ,”OPK ” , ”H” ,” SP” ;int i;for(i=3;i0;i-,i-)printf (“%c”,*pi);printf( “ n”);(10)以下程序用来输出结构体变量 e

19、x 所占存储单元的字节数 ,请填空 struct st char name20;double score;main( ) struct st ex;printf( “ex size:%dn”,sizeof(【12】);(11)以下程序的功能是:利用指针指向三个整型变量,并通过指针运算找出三个数中的最大值,输出到屏幕上。请填空。main()intx,y,z,max,*px,*py,*pz,*pmax ;scanf(? “ %d%d%d ” ,&x,&y,&z) ;px=&x ;py=&y;pz=&z;pmax=&max;【13】;if(*pmax*py)*pmax=*py;if(*pmax*pz

20、)*pmax=*pz;printf( “max=%dn”,max);(12)以下程序中函数fun 的功能是:构成一个如图所示的带头结点的单向链表,在结点的数据域中放入了具有两个字符的字符串。函数 disp 的功能是显示输出该单链表中所有结点中的字符串。请填空完成函数 disp。 #includetypedef struct nodechar sub3;struct node *next;Node; /* 链表结点结构 */ Node fun(char s). /* 建立链表 */void disp(Node *h) Node *p;p=h-net;while( 【14】) printf ( “%sn”,p-sub);p=【15】; main( ) Node *hd;hd=fun( );disp(hd);printf( “n”);headabcdef8 / 8

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1