二级C语言笔试-294_第1页
二级C语言笔试-294_第2页
二级C语言笔试-294_第3页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、级 C 语言笔试90 分-294钟 总分: 100.00 ,做题时间:一、选择题 总题数:50,分数: 60.001.有以下程序 #include vstdio . h> main() int *p , j ; p = NULL p = fun() ; for(j = 0; j <4; j+)printf("%d" , *p) ; p+ ; int*fun()int a4 , k ; for(k=0 ; kv 4; k+)ak = k;return( 分数: 1.00 A. ;程序运行后的输出结果是A程序有错不能运行VB. 输出 4 个 NULLC. 输出 0

2、1 2 3D. 输出 1 1 1 1 解析:2. 假设有如下定义和声明: struct sint m ; char ch ; double x ;union t char a6; int b3 ; tt ; ss;那么 sizeofstruets 的值是 分数: 1.00 A. 6B. 14C. 17 VD. 20解析:3. 假设有如下程序: #define PI 3.1415926 #define Ar 2*PI*r mainfloat a ,1 ; a= 3.0 ;1 = A分数: 1.00 A. ; printf"r = %.2f ,1 = %.2f/n" , a,

3、1 ; 那么程序运行后的输出结果是 V 解析:4. 开发软件时对提高开发人员工作效率至关重要的是 分数: 1.00 A. 操作系统的资源管理功能B. 先进的软件开发工具和环境 VC. 程序人员的数量D. 计算机的并行处理能力解析:5. 假设有如下程序:sub(i nt n)int t;if(n二=1) return t=5;else t=sub( n-1)+3;return t ;mai n()printf("%d/n" ,sub(5);那么程序运行后的输出结果是()(分数:1.00 )A.17VB.18C.19D.20解析:6. 假设有如下程序:sub(i nt x) i

4、nt y = 0 ; static int z = 1 ;y+ = x+2 ; z+ = y+x ; return(z);mai n()int t = 1 , n ;for(n=0 ; n< 3 ; n+)printf("%d 那么程, 序运行后的输出结果是()s分数:1.00 )A.5 ,5,5B.59,13,,C.57,9,,D.58,11,解析:7. 在以下表达中,错误的一条是 ( )( 分数: 1.00 )A. scanf() 函数可以用来输入任何类型的多个数据B. 数组名作函数参数时,也采用“值传递方式VC. 如果形参发生改变,不会改变主调函数的实参值D. 函数的实参

5、与形参的类型应一致 解析:while(m! = n)8. 有以下程序 main() int m , n; printf("Enter m , n:") ; scanf("%d%d",&m , &n); while(m >n)m-=n ; while(n > m)n-=m ;printf("m = %d/n" , m);如果从键盘上输入 65 14 <回车>,那么输出结果为( )( 分数:1.00 )A.m=3B.m=2C.m=1 VD.m=0 解析:9. 数据库设计包括两个方面的设计内容,它们是

6、 ( )( 分数: 1.00 )A. 概念设计和逻辑设计 VB. 模式设计和内模式设计C. 内模式设计和物理设计D. 结构特性设计和行为特性设计 解析:10. 下面表达正确的选项是 ( )( 分数: 1.00 )A. define 和 auto 都不能定义为用户标识符B. 可以把 define 和 auto 定义为用户标识符C. 可以把 define 定义为用户标识符,但 auto 是 C 语言的关键字D. 可以把 auto 定义为用户标识符,但define 是 C 语言的关键字解析:11. sizeof(double) 是 ( )( 分数: 1.00 )A. 一种函数调用B. 一个双精度型表

7、达式C. 一个整型表达式 VD. 一个不合法的表达式 解析:12. 以下的 for 循环 ( ) for(x = 0, y= 0; (y! = 123)&&(x <4) ; x+) ( 分数: 1.00 ) A. 是无限循环B. 循环次数不定C. 执行 4 次 VD. 执行 3 次 解析:2) ;while(!(-x) 程序运行后的输出结果是 ( )13. 有以下程序int x=3 ;do printf("%d" , x-=( 分数: 1.00 )A. 1B. 30C. 1 , -2 VD. 死循环 解析:14. C 语言程序的根本单位是 ( )( 分

8、数: 1.00 )A.函数 VB.过程C.字符D.语句解析»»15. 以下表达中正确的选项是 ( )( 分数: 1.00 )A. 输入项可以是一个实型常量,如 scanf("%f" , 3.5) ;B. 只有格式控制, 没有输入项, 也能正确输入数据到内存, 例如: scanf("a = %d, b=%d") ;C. 当输入一个实型数据时,格式控制局部可以规定小数点后的位数,例如:sea nf("%4.2f",&f)D. 当输入数据时,必须指明变量地址,例如:seanf(“%f",&f)

9、;V 解析:16. 下面各被调用函数首部书写正确的选项是( )( 分数: 1.00 )A.void sub(float x;float y)B.void sub(float x,y)C.void sub(float x,float y)VD.解析:void sub(float x,float y)17. 有以下程序 并inelude < stdio h > #inelude< string h> fun(ehar * w, int n) ehar t , *s1 ,*s2 ; s1=w ; s2 =w+n-1 ; while(s1 <s2) t =*s1+ ;*

10、s1 = *s2- ;* s2=t ;main()ehar p = "1234567" ; fun(p , strlen(p) ; puts(p) ;程序运行后的输出结果是 ( )( 分数: 1.00 )A. 1234567B. 7654321C. 1711717 VD.7177171解析:18. 以下程序的输出结果是( ) void fun(float *p1,float *p2 ,float*s)s = (float *)calloc(1, sizeof(float);*s = *p1+*p2+ ;main()float s2 = 1.1 , 2.2, b2 = <

11、; 10.0 ,20.0 , *s=a; fun(a ,b,s) ;printf("%5.2f/n",* s) ;分数: 1.00 )A. 11.10B. 12.00C. 21.10D. 1.10 V解析:19. 在宏定义 #definePI 3.14159 中,用宏名 PI 代替一个 ( )( 分数: 1.00 )A.单精度数B.双精度数C.常量D.字符串 V 解析:20. 循环链表的主要优点是 ( )( 分数: 1.00 )A. 不再需要头指针了B. 从表中任一结点出发都能访问到整个链表VC. 在进行插入、删除运算时,能更好的保证链表不断开D. 某个结点的位置后,能够容

12、易的找到它的直接前件 解析: 21. 假设有如下程序:#include"stdio h"void main()FILE *fp ;fp = fopen("test" , "wb")fprintf(fp ,"%d%.1f , %c%c, " 5,238.41 , 'B' , 'h') ; fclose(fp) ;那么程序运行后向文件输出的结果是 ( )( 分数: 1.00 )A. 5 238.41 B hB. 5238.4 , Bh VC. 5 , 238.4 , B, hD. 523

13、8.41Bh解析:22.于数据库当中的“年龄在 18 25 之间这种约束是属 ( )( 分数: 1.00 )A. 原子性措施B. 一致性措施c.完整性措施VD. 平安性措施 解析:23. 以下选项中错误的选项是 ( )分数: 1.00 )A. char *sp; gets(sp) ; VB. char sp5 gets(sp) ;C. char *sp="12345" gets(sp) ;D. charsp5 = "/0" gets(sp)解析:24. 线性表假设采用链式存储结构时,要求内存中可用存储单元的地址( )( 分数: 1.00 )A. 必须是连

14、续的B. 局部地址必须是连续的C. 一定是不连续的D. 连续不连续都可以 V解析:25. C 语言中各种根本数据类型的存储空间长度排列为 ( )( 分数: 1.00 )A. char < long < int < float < doubleB. double < float < long < int < charC. char < int < long < float < double VD. float < int < long < char < double 解析:26. 有以下程序 unio

15、n myun struct int x ,y,z ;u; int k ; a; main() a ux= 4; auy=5;a,uz=6; ak= 0; printf("%d/n" , a u x) ; 程序运行后的输出结果是 ( )( 分数: 1.00 )A. 4B. 5C. 6D. 0 V中的 if 语句语法是错误的。 ( )解析:27. 下述语句中,分数: 1.00 )A. if(x >y) ;B. if(x = y)x+ = y ;C. if(x! = y)seanf("%d" , &x)else seanf("%d&qu

16、ot;, &y) ; VD. if(x <y)x+ ;y+ ;解析:28. 有如下定义:struct person char name9 ; int age ;struct person class10= "john" ,17,"Paul" ,19,"Mary" ,18 ,"Adam" ,16;能输出A.prin tf("%c/ n,),1)B.prin tf("%c/ n,1),0)C.pri

17、n tf("%c/ n分数:1.00 29.为了合理组织数据,应遵循的设计原那么是 分数:1.00 A. “一事一地的原那么,即一个表描述一个实体或实体之间的一种联系B. 用外部关键字保证有关联的表之间的联系C. 表中的字段必须是原始数据和根本数据元素,并防止在表之间出现重复字段D. 以上各原那么都包括V解析:30.有以下程序mai nint x=10 , y = 10 ; printf("%d%d/n" 程, x- , -y); 序运行后的输出结果是()分1数:1.00 )A.10 10B.9 9C.9 10D.10 9V解析:31.设有如下定义:char *

18、aa2 = "abcd" , "ABCD"那么以下说法中正确的选项是分数:1.00 A. aa数组元素的值分别是"abcd"和"ABCD"B. aa是指针变量,它指向含有两个数组元素的字符型一维数组C. aa数组的两个元素分别存放的是含有D. aa数组的两个元素中各自存放了字符 解析:32.以下选项中的表达式调用库函数依次求 2的3次方值。正确的调用是4个字符的一维字符数组的首地址'a'和'A'的地址-4.5的绝对值、-4.0的平方根值、30角的正弦值和( 分数: 1.00 )A.a

19、bs(-4.5)B.sqrt(-4.0)C.sin(3.1416 6.0) VD.paw(2.0 ,3.0)解析33.设有如下程序:#include "string h"main()static char s120, s220 ;scanf("%s" ,s1);scanf("%s" , s2) ;if(strcmp(s1 ,s2) printf("");else printf("$")printf("%d/n" ,strlen(strcat(s1,s2) ;如果从键盘上输入

20、name V回车 namel V回车,那么程序运行后的输出结果是 分数: 1.00 A. $8B. 10C. $9D. 9 V解析:34.设a、b和c都是int型变量,且 a = 3 , b = 4 , c= 5,那么以下值为 0的表达式是( 分数: 1.00 )A. 'a'&&'b'B. a V= bC. a|b+c&&bcD. !(a V b) &&!c|1) V 解析:35. 以下不属于对象的根本特点的是 ( )( 分数: 1.00 )A.分类性B.多态性C.继承性VD.封装性解析:36. 执行下面程序的正确

21、结果是 ( ) main()float a = 1.9switch( 分数: 1.00 )A.case 0 : printf("0000"); case 1printf("1111"); case 2printf("3333");printf("%f" , A) ;A) 1.900000B. 111133331.900000 VC. 33331.90000090, "liudan" ,sum i ;D. 00001111233331.900000 解析:37.假设有如下程序:struct stu

22、dent char name10; float score3 ; stu3 = "lili" , 75 , 90 ,90,85,75; "guoli" , 85, 85,70; main()int i ; float sum = 0, aver ; for(i = 0; i <3;i+) sum = sum+stui.score1 ; aver =printf("%6.2f/n" , aver) ;那么程序运行后的输出结果是 ( )( 分数: 1.00 )A.83.33B.85.00C.86.00D.86.67 V 解析:38.

23、 下述对 C 语言字符数组的描述中错误的选项是 ( )分数: 1.00 )A. 字符数组可以存放字符串B. 字符数组中的字符串可以整体输入、输出C. 可以在赋值语句中通过赋值运算符“=对字符数组整体赋值D. 不可以用关系运算符对字符数组中的字符串进行比拟 解析:39. 有以下程序:void fun(int k)static int a5; int ifor(i = 0; i <5;i+) ai+ = i+k , printf("%d" , ai) printf("/n") ;main()fun(1) ; fun(2) ;程序的输出结果是 ( )(

24、分数: 1.00 )A. 1 2 3 4 53 5 7 9 11 VB. 随机数C. 1 2 3 4 52 3 4 5 6D. 1 2 3 4 52 4 6 8 10解析:40. 在计算机中,算法是指 ( ) 分数: 1.00 A. 加工方法B. 解题方案的准确而完整的描述VC. 排序方法D. 查询方法 解析:41. 对下述程序,正确的判断是 main int a , b, seanf"%d ,%d", &a, &b ; ifa > b a=b ; b=a ; else a+ ; b+ printf"%d , %d" , a, b

25、;( 分数: 2.00 )A.有语法错误不能通过编译VB.假设输入4, 5 那么输出5,6C.假设输入5, 4 那么输出4,5D.假设输入5, 4 那么输出5,5 解析:42. 以下程序的输出结果是 ( ) #include < string h> main()char s1 = "123" , s2="abc" , ss20 = "010" ; strcat(ss+1 , strcpy(s2 , si) ;printf("%s/n" , ss);( 分数: 2.00 )A. 010123 VB. 0a

26、bcC. 01123D. 01abc 解析:43. 设有如下定义 int x= 10 , y = 3, z; 那么语句 printf("%d/n" , z= (x%y , x/y);的输出结果是 ( ) 分数: 2.00 A. 3 VB. 0C. 4D. 1解析:44. 以下正确的变量声明是 ( 分数: 2.00 )A. int m ; n; k ;B. unsigned int m , n, k; VC. double int m , n, k;D. int m , n, k 解析:45. 以下表达中错误的选项是 ( ) 分数: 2.00 A. 在 C 程序中, APH

27、和 aph 是两个不同的变量B. C 程序中的变量,代表内存中的一个存储单元,它的值可以根据需要随时修改C. 在 C 程序中,无论是整数还是实数,都能准确无误地表示VD. 在 C 程序中,一个正整数可以用十进制、八进制和十六进制的形式来表示解析:46. 有以下程序:#include < stdlib h>void fun(int * s , int * * d)* *d = *(s+2);main()int a=1 ,2, 3, 4,5,*b;b = (int *)malloc(sizeof( in t);fun(a , &B) ; printf("%d/n&qu

28、ot; , *b+1) ; 程序的输出结果是 ( ) (分数: 2.00 )A. 2B. 3C. 4 VD. 5解析:47. 需求分析阶段的任务是确定 ( )分数: 2.00 A. 软件开发方法B. 软件开发工具C. 软件开发费用D. 软件系统功能 V解析:48. 大写字母 B 的 ASCII 码值是 66,小写字母 b 的 ASCII 码值是 98,那么用八进制表示的字符 常量 '/ 142' 是 分数:2.00 )A.字符BB.字符b VC.字符aD.非法的常量解析:49. 模块独立性是软件模块化所提出的要求,衡量模块独立性的度量标准是模块的 分数: 2.00 A. 抽象和

29、信息隐蔽B. 局部化和封装化C. 内聚性和耦合性 VD. 激活机制和控制方法解析:50. 设有定义: int a ,*p=&a,* *pp = &p; ,那么与 a= 100;等价的语句为 分数: 2.00 )A.*p=100 ;B. *pp = 100 ; VC. &*p = 100 ;D. *pp =10; 解析: 二、 填空题 总题数: 14,分数: 40.00 51. 栈和队列通常采用的存储结构是 【1】 。分数:2.00 )填空项 1解析:: 正确答案:链式存储和顺序存储52. 源程序文档化要求程序应加注释。注释一般分为序言性注释和 【 2】 注释分数:2.0

30、0 )填空项 1解析:: 正确答案:功能性53. 软件测试方法中,黑盒测试法和白盒测试法是常用的方法,其中黑盒测试法主要是用于测试【3】 填空项 1 解析:分数: 2.00 : 正确答案:软件外部功能54. 设一棵二叉树的中序遍历结果为 DBEAFC ,前序遍历结果为 ABDEC ,F 那么后序遍历结果为 【 4】分数:2.00 )填空项 1解析:: 正确答案: DEBFCA 55. 【 5】是从二维表列的方向进行的运算。分数:2.00 )填空项 1解析:: 正确答案:关系运算56. 表示“整数 x 的平方大于36" 时的值为“真的C 语言逻辑表达式是【 6】分数:2.00 )填空项

31、 1解析:: 正确答案: x<-6|x > 6 57. 假设有如下程序: #include"stdio h" main char s30; strcpy&s0 ,"abc" ; strcpy &s1 ,"de" ;strcpy &s2 ,"f" ;printf "%s/n" , s ; 那么程序运行后的输出结果是 【 7】 。分数:2.00 )填空项 1解析:: 正确答案: adf 58. 假设要说明一个新类型名 ArrInt ,使得定义语句 ArrInt x

32、 ;等价于定义语句 Int x410; ,正确的 说 明语句形式为 【 8 】 。分数:2.00 )填空项 1解析:: (正确答案:typedef int ArrInt410;)59. 下面程序是计算 100 以内能被 4 整除且个位数为 4 的所有整数,请填空。 main int m , n;for ( m =0 ; 【 9 】 ; m+ n = m*10+4 ;If【 10】continue ; printf"%d/n" , n;分数: 4.00 填空项 1: 正确答案: 9m < 1010n%4! = 0解析:60. 以下程序从终端输入一行字符放在 s 数组中, 输入以回车符作为结束, 函数 fun 统计存放 在 s 数组中每个数字字符的个数。 形参 ch 指向 s 数组,形参 n 给出了 s 数组中字符的个数。 在 acc 数组中用下标为 0 的元素统计字符“ 0的个数,下标为 1 的元素统计字符“ 1的个 数,? 。请填空。#include < stdio h>void fun int *

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论