C期末考试试卷及复习资料

合集下载

成人教育高起专《C语言程序设计》(成人教育高起专)》期末考试复习题及参考答案

成人教育高起专《C语言程序设计》(成人教育高起专)》期末考试复习题及参考答案

《C语言程序设计》(高起专)》1.一下列关于C语言的叙述错误的是( )。

A) 变量sum和变量SUM代表相同的变量B) 不同类型的变量可以出现在一个表达式中C) 在赋值表达式中等号(=)左边的变量和右边的值可以是不同类型D) 同一个运算符号在不同的场合可以有不同的含义2.一个C程序的执行是从( )。

A) main函数开始,直到main函数结束B) 第一个函数开始,直到最后一个函数结束C) 第一个语句开始,直到最后一个语句结束D) main函数开始,直到最后一个函数结束3.一个C语言程序是由( )。

A)一个主程序和若干子程序组成B)若干子程序组成C) 一个或若干个函数组成D) 若干过程组成4.下列可用于C语言变量名的是( )。

A) int B) a2 C) M.D.John D) 2a5.以下不正确的语句(设有int p,q)是( )。

A)p+=3; B) p=p/q;C) p=3; D) p/q=q;6.C语言中对嵌套if语句的规定是:else总是与( )配对。

A)第一个if B) 缩进位置相同的ifC) 其之前最近的if D) 其之前最近且不带else的if7.以下说法正确的是( )。

A) 输入项可以为一个实型常量,如scanf("%f",3.5);B) 只有格式控制,没有输入项,也能进行正确输入,如scanf("a=%d,b=%d");C) 当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf("%4.2f",&f);D) 当输入数据时,必须指明变量的地址,如scanf("%f",&f);8.若有代数式3ae/(bc),则不正确的C语言表达式是( )。

A) a/b/c*e*3 B) 3*a*e/b/cC) 3*a*e/b*c D) a*e/c/b*39.下列程序的输出结果是( )。

最新c语言期末考试试题及答案

最新c语言期末考试试题及答案

最新c语言期末考试试题及答案1. 一个C程序的组成部分可以是()。

A)一个主函数和一至若干个其他函数B)一至若干个主函数C)一个主程序和一至若干个其他函数D)一个主程序和一至若干个子程序2. 一个C程序的执行是从()。

(A)本程序的main函数开始,到main函数结束(B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束(C)本程序的main函数开始,到本程序文件的最后一个函数结束(D)本程序文件的第一个函数开始,到本程序main函数结束3. C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符()。

A)必须为字母B)必须为下划线C)必须为字母或下划线D)可以是字母、数字和下划线中任一种字符4. 设有定义:int m=1,n=-1;则执行语句printf("%d\n",(m--&++n);后的输出结果是()。

A)–1 B)0 C) 1 D) 25. 表达式11&10的结果用二进制表示为()。

A)11B)3C)1D)106. 设有语句int a=3;则执行语句a+=a-=a*a后,变量a的值是()。

(A)3(B)0(C)9(D)-127. 在下列选项中,不的赋值语句是()。

A)t/=5;B)n1=(n2=(n3=0));C)k=i==j;D)a=b+c=1;8. 下列( )表达式不满足:当x的值为偶数时值为"真",为奇数时值"假"。

A)X%2==0B)!x%2!=0C)(x/2*2-x)==0D)!(x%2)9. 若有定义:int a=8,b= 5,c;执行语句c=a/b+0.4 后c的值为()A)1.4 B)1 C)2.0 D)210. 假设a=3,b=4,c=5,则逻辑表达式:!(a+b)+c-1&&b+c/2的值是()。

A)true B)false C)0D) 111. 若int a=3,b=4;则执行c=a++>2||b-->=4之后,b变量的值为()。

2004.1《C语言》期末考试试卷及答案

2004.1《C语言》期末考试试卷及答案

1
(6)C (7)D (8)C (9)A (10)C 二、填空题(20分) 、 、 1、结构化程序的3种基本结构是 2、能实现C程序循环结构的语句包括 、 、 3、按优先级从高到低排列运算符:!、&&、||排列结果 4、假设 struct student {int num; float score; }stu_1; 与 则结构体类型名与结构体变量明分别是 5、strlen(“welcome\0”)的结果是 6、字符常量的概念是 7、函数体一般包括声明部分与 8、C的源程序经过 后生成目标程序 9、设int a,b;则能正确表示代数式1/(ab)的C语言表达式是 10、变量的指针的概念是 答案: (1)顺序结构、选择结构、循环结构 (2)do~_while、for、while (3)!>&&>|| (4)struct student 与 stu_1 (5)7 (6)用单引号‘’界定的字符 (7)执行部分 (8)编译 (9)1.0/(a*b)或1/((float)a*b) (10)存放变量的地址 三、程序填空题(20分) 1.判断某个大于2的整数是否是素数。 判断整数M是否是素数的标准是:除了1与M以外,M不能被任何一个整数所整除。 main() { int n,i,flag; flag=1; ); scanf(“%d”, (1) for ( (2) ) if(n%i==0) { flag=0; (3) ; } if(flag!=0) printf(“ yes”); else printf(“ no”); } 答案:(1)&n (2)i=2;i<n;i++ (3)break;
2
2. 一个函数如下,用程序实现之。
( x < 2) x y = 3x − 1 (2 <= xmain() { float x, y; scanf(“ %f”, &x); if (x<2) y = x; else if (1) y = (2) else y = (3) printf(“y=%f”, y); } 答案:(1)(x<10) (2)3*x-1 (3)4*x-11 分支同样正确,但若表达式少乘号不得分) 四、写出程序运行的输出结果(20分) 1. main() { int a,b; int *p_1, *p_2; a=100; b=10; p_1=&a; p_2=&b; printf(“%d, %d”, a, b); printf(“ %d, %d”,*p_1 ,*p_2); } 程序的运行结果是: 100,10 100,10 (此题若先写大于等于10的

华北电力大学-《C语言程序设计》复习资料

华北电力大学-《C语言程序设计》复习资料

总体上必须清楚的:1)程序结构是三种: 顺序结构, 循环结构(三个循环结构), 选择结构(if 和switch)2)用C语言编写的程序称为C语言源程序,源程序文件的后缀名为“.c”;源程序经编译后生成后缀名为“.obj”的目标文件;再把目标文件与各种库函数连接起来,生成“.exe”的可执行文件。

3)main函数,又称主函数,每个C程序有且只有一个main函数;无论main函数在整个程序中的位置如何,程序总是从main函数开始执行、也从main函数结束。

读程序时应从main函数开始, 然后从上往下读(碰到循环做循环,碰到选择做选择)。

4)计算机的数据在电脑中保存是以二进制的形式. 数据存放的位置就是他的地址.5)bit是位是指为0 或者1。

byte 是指字节, 一个字节= 八个位.6)一定要记住二进制如何划成十进制。

概念常考到的:1、编译预处理不是C 语言的一部分,不占运行时间,不要加分号。

C语言编译的程序称为源程序,它以ASCII数值存放在文本文件中。

2、每个C语言程序中main函数是有且只有一个。

3、在函数定义中不可以再定义函数、即不允许函数嵌套定义。

4、算法可以没有输入,必须要有输出。

5、break可用于循环结构和switch语句。

6、逗号运算符的级别最低。

7、任意合法的表达式一定有一个数值与它对应。

第一章1)C程序中对字母的大小写是敏感的,如A与a是不同的标识符。

注释:是对程序的说明,目的是提高程序的可读性,可出现在程序中任意合适的地方,注释从“/*”开始到最近一个“*/”结束,其间任何内容都不会被计算机执行,不允许嵌套注释。

3)合法的用户标识符考查:合法的要求是由字母,数字,下划线组成。

有其它元素就错了。

并且第一个必须为字母或则是下划线。

第一个为数字就错了。

关键字不可以作为用户标识符号。

main define scanf printf 都不是关键字。

迷惑你的地方If是可以做为用户标识符。

《建筑环境与能源系统测试技术》考试复习试卷及答案解析-建环大学期末考研复习试题(C卷)

《建筑环境与能源系统测试技术》考试复习试卷及答案解析-建环大学期末考研复习试题(C卷)
19.测量液体流量时,应将差压计安装在高于节流装置处。测量气体流量时,最好将差压计装在低于节流装置处。()
20.测量SO2的方法主要有动态法、静态法、光光度法、火焰供学习复习使用,一切盗版、破坏作品完整性等侵权行为,将追究法律责任
32、某1.0级压力表,满度值Xm=1.00MP,求测量值分别为x1=1.00MP,x2=0.8mp,x3=0.20MP时绝对误差和相对误差(12分)
2020~ 2021学年第一学期期末考试《建筑环境与能源系统测试技术》试卷(C)
标准供学习复习使用,一切盗版、破坏作品完性等侵权行为,将追究法律责任
………………………………装………………………………订…………………………………线……………供学习复习使用,一切盗版、破坏作品完整性等侵权行为,将追究法律责任
课程________________________班级________________________姓名__________________________学号________________________
评阅人
得分
2020~2021学年第 一 学期期末考试《建筑环境与能源系统测试技术》试卷( C )
一、选择题(每题2分,共20分)
1.下列指标中,哪一项只表示仪表指示值的分散程度()
A.正确度B.精密度C.准确度D.精确度
2.仪表X:量程范围0~500℃,1.0级;仪表Y:量程范围0~100℃,1.0级。两个仪表的绝对误差的大小是()。
A.X>YB.X=YC.X<YD.无法比较
3.下列指标中,表测量仪表对被测量变化的敏感程度的是()。
A.线性度B.分辨率C.灵敏度D.变差
4.用来复现和保存计量单位具有最高准确度的计量仪器属于以下哪种基准()

完整word版,C语言程序设计期末考试试题(含答案)

完整word版,C语言程序设计期末考试试题(含答案)

C语言程序设计期末考试试题及其答案一、单项选择题(本大题共20题,每题2 分,共40分)1、以下不是C语言的特点的是( )A、C语言简洁、紧凑B、能够编制出功能复杂的程序C、C语言可以直接对硬件进行操作D、C语言移植性好2、以下不正确的C语言标识符是( )A、ABCB、abcC、a_bcD、ab.c3、一个C语言程序是由( )A、一个主程序和若干子程序组成B、函数组成C、若干过程组成D、若干子程序组成4、一个算法应该具有“确定性”等5个特性,对另外4个特性的描述中错误的是( )A、有零个或多个输入B、有零个或多个输出C、有穷性D、可行性5、设变量a是整型,f是实型,i是双精度型,则表达式10+‘a’+i*f值的数据类型为( )A、intB、floatC、doubleD、不确定6、在C语言中,char型数据在内存中的存储形式是( )A、补码B、反码C、源码D、ASCII码7、有如下程序,输入数据:12345M678<cR>后(<CR>表示回车),x的值是( ) 。

#include<stdio.h>main(){int x;float y;scanf("%3d%f",&x,&y);}A、12345B、123C、45D、3458、若有以下定义int a,b; float x,则正确的赋值语句是( )A、a=1,b=2B、b++;C、a=b=5D、b=int(x);9、以下程序的执行结果是( )#include<stdio.h>{int i=10,j=10;printf("%d,%d\n",++i,j--);}A、11,10B、9,10C、11,9D、10,910、巳知字母A的ASCII码是65,以下程序的执行结果是( )#include<stdio.h>main(){char c1='A',c2='Y';printf("%d,%d\n",c1,c2);A、A,YB、65,65C、65,90D、65,8911、下列运算符中优先级最高的是( )A、<B、十C、%D、!=12、设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0是( ) 。

c语言期末复习试题附答案

c语言期末复习试题附答案

试卷编号:1120所属语言:C语言试卷方案:C语言期末考试试卷总分:100分共有题型:4种一、单项选择共30题(共计60分)第1题(分)设有定义:int k=0;,以下选项的四个表达式中与其他三个表达式的值不相同的是(A ).A:k++B:k+=1C:++kD:k+1第2题(分)已知int i=5,执行语句i+=++i后,i的值是(C).A:10B:llC:12D:A、B、C都不对第3题(分)以下程序的功能是:给r输入数据后,计算半径为r的圆面积s.程序在编译时出错. ttinclude <>void main()/* Beginning */{ int r;float s;scanf (〃%d〃,&r);s=p*r*r; printf (〃s=%f\n〃,s);出错的原因是(D).A:注释语句书写位置错误B:存放圆半径的变量r不应该定义为整型C:输出语句中格式描述符非法D:计算圆面积的赋值语句中使用了非法变量第4题(分)〃\\\〃 ABC\〃 \\〃的长度是(B ).A:llB:7C:5D:3第5题(分)已知int j, i=l执行语句j=-i++;后,j的值是(C ).A:1B:2串中的内容为“abcdefg”时,c 所指数组中的内容应该为 “lg2f3e4dcba” 。

*/ttinclude <>#include <>#include <>void fun ( char char *b, char *c )int i , j;char ch;i = 0;j 二 strlen(b)-l;/**********FOUND**********/ch = b [ i];b[j] = ch; i++; j —;/**********FOUND**********/while ( *a &&*b )//此处&&改为| | (逻辑或)if ()*c =*a;c++;/**********FOUND**********/a+;)if ( *b )*c 二*b; c++;b++;*c = 0;main()char sl[100],s2[100],t[200];clrscr ();printf (,z \nEnter si string : 〃);scanf (〃如〃,si);printf (,z \nEnter s2 string : 〃);scanf (〃%s 〃, s2);fun( si, s2, t );printf (/z \nThe result is : %s\n 〃,t );i j四、程序设计共1题(共计20分)第1题(分)/*【程序设计】功能:判断一个整数w 的各位数字平方之和能否被5整除, 可以被5整除则返回1,否则返回0。

大学《C语言程序设计》期末考试试卷及参考答案

大学《C语言程序设计》期末考试试卷及参考答案

大学《C语言程序设计》期末考试试卷及参考答案《C语言程序设计》期末考试试卷参考答案一、判断题(10分)1、对2、对3、错4、错5、对6、错7、错8、错9、错10、错二、填空题(30分,,1到10题1分1空,10到18题2分1空)1.2.5 2. a!=0&&b!=0 3. m=1b 4. windows 95 5. x[i]>='A'&&x[i]<='Z' 6.234567 7.文件的首纪录前8、struct tree *Ltree,*Rtree 9. i<=10010. char a[10]="continue"; 11. p*pow(1+r,5) 12. 'D' 13. 10、514.#define utol(ch) ch=ch>='A'&& ch<='Z' ? ch+'a'-'A':ch15.首行第i+1个元素的地址,第i+1行的首地址,a[0][0]的值16.p=(int*)mallo(n);17. (-b+sqrt(b*b-4*a*c))/2/a 18. float(*fg)(float **,int,int);三、单项选择题(在每小题的四个备选答案中选出一个正确的,10分))1、A2、B3、C4、B5、D6、A7、A8、B9、C 10、A四、程序阅读题(20分,每题4分)1、 A C E G2、 x=3 y=23、the two string are same:fthe two string are same:r4、 K=85、1《C语言程序设计》期末考试试卷及参考答案一、判断题(10分)1、C语言是一种结构化程序设计语言。

()2、在标准C中,整型变量与字符变量是可以通用的。

()3、在标准C中,“=”是判断两个数是否相等。

C期末试卷答案.doc

C期末试卷答案.doc

++i : i 自增1后在参与 i++: i 参与计算后,i2011 ——2012 学年第二学期命题教师签名:审核教师签名: 课名:计算机程序设计基础c考试考查:考试此卷选为:期中考试()期终考试(丁)补考( )重修( ) 年级 _____ 专业 ___________ 学号 _______ 姓名 __________ 任课教师 ________ 得分 _________(注意:本试卷共 五 大题, 大张,满分100分.考试时间为 90分钟。

)一、阅读下列程序,写出程序的输出结果。

(共24分)1. (4 分)void main(){ int a = 6;switch( a%4) { case 0: printf(n %3d'\++a); case 1: printf(n %3d n ,—a); 其他计算; case 2: printf(n %3d ,\a++); 的值在自增1; default: printf(,,%3d ,\a —);输』占果:6 7 2. (4 分) void main () { int i, s=0; for ( i=l; i<=10; i++){讦(i%3) continue ; i%3意思是3的倍数的话就 继续下去,如果不是就返回for 循环。

continue 句只终止本次循环,而不是 终止整个循环;break 语句则是终止整个循环,不会再去判断循环条件是否满足。

s=s+i; } printf (n s 二 %d\n\s );输出结果:s = 183. (4 分)void main(){ intikm,a[]={4,3,5,7,6,&2,10,9};m = a[0];for( i =1 ; i<=8; i++)if( m> a[i]) { m = a[i] ; k = i; } printf(n%d , %d k );}运行结果:2,64.(4 分)int fl (int a){ int k,n=0;static int m=3;n= n+a; m=m+a;k = m+n; return k;}void main(){ int n,m=3;for ( n=0; n<2; n++) printf(M fl = %d\n n,fl(m));蕴行结果:fl = 9fl = 125.(4 分)int f l (char *p){ int n=0;while( *p++!='\0‘)n++;return n;}void main(){ char s[] =n abcdl234AB H; printf(n%d\n n,fl (s));k行结果:106.(4 分)struct st {int m ;int n;};void main(){ struct st a[3 ] = {{2,6},{5, 3},{3, 4 }};int k ;k = a[l].m + a[2].m; printf(n k= %d, a= %d \n n, k, a[0].n -a[l].n);运行结果:k= 8, a= 3二、阅读下列程序说明和程序,在每小题提供的4个可选答案中,挑选一个正确答案填空。

云南师范大学《C语言》期末考试样卷及答案

云南师范大学《C语言》期末考试样卷及答案

云南师范大学《C语言》期末考试样卷及答案云南师范大学2011-2012学年下学期统一考试《计算机技术基础》(C语言)期末考试样卷考试方式(闭卷机考)考试时量:100分钟试卷编号(样卷)一、判断题:(每题1分,共15分)1.在C程序中,注释内容在编译时被忽略,因此好的C程序不需要注释。

BA.对B.错2.#define是一种特殊的C语句,在行末没有分号。

BA.对B.错3.C语言中表达式3%2是合法的表达式。

AA.对B.错4.在C程序中,赋值语句x=123和x=0123后,变量x的值是不同的。

AA.对B.错5.2&&3的结果为1。

AA.对B.错6.C程序总是从程序的第一条语句开始顺序执行。

BA.对B.错7.C语言中,函数的定义可以嵌套。

BA.对B.错8.结构体中的成员变量可以有不同的数据类型。

AA.对B.错9.出现在主调函数之前的用户自定义函数,可以不必加函数声明。

AA.对B.错10.C语言中用for循环语句实现的功能,用while循环语句不一定能实现。

BA.对B.错11.有如下说明:int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;则数值为5的表达式是*(P+4)。

AA.对B.错12.字符串和字符数组都要求其最后一个字符为’\0’。

BA.对B.错13.合理使用共用体可以节省内存空间。

AA.对B.错14.函数是C程序的基本单位。

AA.对B.错15.全局变量在程序中的任何地方都有效。

BA.对B.错二、单选题(在本题的每一小题的被选答案中只有一个正确答案,多选不给分,每题1分,共40分)1、下面叙述错误的是____。

DA.C程序中,各种括号应成对出现B.C程序中,赋值号的左边不可以是表达式C.C程序中,变量名的大小写是有区别的D.C程序中,若未给变量赋初值,则变量的初值自动为02.有宏定义:#define E 2.718则编译预处理时将E替换成一个____。

DA.单精度常量B.单精度变量C.双精度变量D.字符串3、C程序中,合法的关键字是____。

大一《C语言程序设计基础》期末考试试卷及答案

大一《C语言程序设计基础》期末考试试卷及答案

《C语言程序设计基础》考试试卷计算机电气类专业一年级 1 学期期末考试试题A卷时间100分钟,考试形式:闭卷总分100分,占总评成绩70 %注:此页不作答题纸,请将答案写在答题纸上一、判断题(每小题1分,共15分)1.标准C中,只有数值型数据才能进行4则混合运算。

2.标准C中,_a是合法的自定义标识符。

3.有定义:float f;表达式f+=(int)3.6%2”不符合C语言语法。

4.标准C中,逻辑运算的结果只有是1表示满足条件,而结果是0表示不满足条件。

5.C语言程序中要求被调用函数在调用函数中能被调用必须要在调用函数中进行声明。

6.以下运算符排列顺序满足按照优先级从高到低的排列:‘&&’、‘!’、‘==’、‘-’。

7.语句for(;;);是非法的。

8.在C语言程序中可以由多个源文件构成,每个源文件都可以有自己的main()函数。

9.while和do-while的主要区别是后者至少无条件执行一次。

10.数组名代表数组的首地址是常量,所以将实参数组名表示地址传给形参数组名是错误的。

11.当函数没有返回值类型时,表示函数类型为void。

12.C语言中,指针变量作函数参数时,它们不是采取单向值传递的方式。

13.一个函数中只允许有一条return语句。

14.在C语言中,如果没有说明变量的存储类型是auto类型的。

15.由于指针中所存放的地址都是整数,所以整型指针和浮点型指针可以相互赋值。

二、填空题(每空1分,共15分)1.若a=4;b=5,c=6;则表达式c==(b=-a); 中c的值是(1)。

2.计算表达式的值:4&&-4的值:(2);设int a=3,b=4,c=5,则表达式a||b+c&&b==c的值:(3);设x=2.5, a=7, y=4.7,则表达式x+a%3*(int)(x+y)%2/4的值:(4);设a=12,则表达式a*=a/5的值:(5);3.若int x = 4,y = 6,z = 0;有循环while(x = y) {z ++;y--;}则循环语句执行完后,z值为(6)。

c语言期末考试练习题1(含答案)

c语言期末考试练习题1(含答案)

一、单项选择题(6小题,每小题3分,共18分)1、在一个C源程序文件中,若要定义一个只允许本源文件中所有函数使用的全局变量,则该变量需要使用的存储类别是A、externB、registerC、autoD、static2、下面4个选项中,是合法转义字符的选项是( )。

A、'\"B、'\'C、'\018'D、'\\0''\\' '\017' '\f' '\101''\n' '\''' 'xab' 'x1f'3、下面4个选项中,是正确的八进制数或十六进制数的选项是( )。

A、–10B、0abcC、0010D、0a120x8f –017 –0x11 ––011 0xc 0xf1 –0xa4、以下在任何情况下计算平方数时都不会引起二义性的宏定义是( )A、# define POWER(x) □□x * xB、# define POWER(x) □□(x) * (x)C、# define POWER(x) □□(x * x)D、# define POWER(x) □□((x) * (x))5、以下程序段( )x= –1;do{ x=x*x;} while (!x);A、是死循环B、循环执行二次C、循环执行一次D、有语法错误6、下面程序的运行结果是( )# include <stdio.h>int main( ){ int i,j,x=0;for (i=0;i<2;i++){ x++;for(j=0;j<=3;j++){ if (j%2) continue;x++;}x++;}printf ("x= %d \n",x);return 0;}A、x=4B、x=8C、x=6D、x=12二、填空题(7小题,每小题3分,共22分)1、下面程序段的运行结果是( )。

c期末考试卷

c期末考试卷

c期末考试卷
尊敬的同学们,随着学期的结束,我们即将迎来期末考试。这是检验
我们一学期学习成果的重要时刻。期末考试不仅能够帮助我们巩固知
识,还能让我们了解自己的学习状况,为下一学期的学习做好准备。
以下是期末考试的一些重要提示和建议:

考试时间安排:
- 请同学们注意考试的具体时间,提前做好准备,确保能够准时参加
考试。
- 考试时间表已在校园网和教务系统中公布,请同学们及时查看。

复习策略:
- 制定一个合理的复习计划,均衡分配时间,确保每个科目都有足够
的复习时间。
- 复习时,要注重理解概念,强化记忆,同时通过做练习题来检验自
己的掌握情况。

考试纪律:
- 请同学们严格遵守考试纪律,诚信考试,不得有任何作弊行为。
- 考试期间,手机等通讯工具必须关闭并上交,以确保考试的公平性。

考试技巧:
- 在考试中,先做自己最擅长的题目,以提高答题的自信心。
- 遇到难题时,不要慌张,先做标记,待完成其他题目后再回来解决。
- 注意时间管理,合理分配答题时间,避免因时间不足而影响整体成
绩。

考试心态:
- 保持良好的心态,不要因为考试而产生过度的紧张和焦虑。
- 相信自己的努力和准备,以积极的态度迎接考试。

考试后:
- 考试结束后,及时反思自己的答题过程,总结经验教训。
- 无论成绩如何,都要保持积极向上的心态,为下一学期的学习做好
准备。

最后,希望同学们能够以最佳的状态迎接期末考试,取得优异的成绩。
祝大家考试顺利!

C语言程序设计基础期末考试试卷‘B’及答案完整版

C语言程序设计基础期末考试试卷‘B’及答案完整版

C语言程序设计基础期末考试试卷‘B’及答案HEN system office room 【HEN16H-HENS2AHENS8Q8-HENH1688】一、单项选择题1. 在C语言中,下面字符串能用作变量名的是( )。

A、a+bB、autoC、2-andD、a22. 若double x=2,y;则执行y=x+3/2;后,y的值是( )。

A、 B. C. D. 33. 下列关于C语言中字符常量与字符串常量的叙述中,错误的是( )。

A、字符常量是用单撇号括起来的一个字符B、空格字符也可用作字符常量C、字符串常量是用单撇号括起来的一个字符序列D、字符串常量是用双撇号括起来的一个字符序列4. 若有以下变量说明和数据的输入方式,则正确的输入语句为( )。

变量说明:float x1,x2;数据的输入方式:<回车><回车>A、scanf(“%f,%f”,&x1,&x2);B、scanf(“%f%f”,&x1,&x2);C、scanf(“%,%”,&x1,&x2);D、scanf(“%%”,&x1,&x2);6. 在一个源文件中定义的全局变量的作用域为()。

A. 本文件的全部范围B. 从定义该变量开始至本文件结束C. 本函数的全部范围D. 本程序的全部范围7. 当调用函数时,实参是一个数组名,则向函数传送的是( )。

A、数组的长度B、数组的首地址C、数组每一个元素的地址D、数组每个元素中的值8.若j为整型变量,则下面while循环( )。

j=10;while(j!=0) j=j-1;A、执行0次B、执行1次C、执行10次D、执行无限次9. 在while(x)语句中的x与下面条件表达式等价的是:( )。

A、x!=0B、 x==1C、x!=1D、x==010. 以下对C语言函数的描述中,正确的是( )。

A、调用函数时,参数可以是表达式B、函数的定义可以是嵌套C、函数必须有返回值D、所有函数必须在同一个程序文件中定义12. C语言中函数返回值的类型由( )决定的。

2011-2012学年度第二学期C语言程序设计期末考试试卷和答案

2011-2012学年度第二学期C语言程序设计期末考试试卷和答案

************(本科)试卷(A 卷)2011--2012学年第 二 学期《C 程序设计》试卷开课单位:计算机学院,考试形式:闭卷,允许带 入场40分每题1分):答案必须填写在答题卡的相应位置上,否则不得分。

.C 语言中字符型(char )数据在内存中的存储形式是________。

A 、原码 B 、反码 C 、补码 D 、ASCII 码 .C 语言中基本的数据类型包括________。

A 、整型、实型、逻辑型 B 、整型、实型、字符型 C 、 整型、字符型、逻辑型 D 、整型、实型、逻辑型、字符型 .在C 语言中,int 类型数据在内存中占用________。

A 、2字节 B 、4字节 C 、由编译系统决定 D 、由用户决定 .运算符有优先级,C 语言中关于运算符优先级的正确叙述是________。

A 、逻辑运算符高于算术运算符,算术运算符高于关系运算符; B 、算术运算符高于关系运算符,关系运算符高于逻辑运算符; C 、算术运算符高于逻辑运算符,逻辑运算符高于关系运算符; D 、关系运算符高于逻辑运算符,逻辑运算符高于算术运算符。

.下面关于C 语言语句的叙述,错误的是________。

A 、C 语言一行可以允许写多条语句; B 、C 语言语句用分号结束; C 、语句一行写不下时,可以用逗号换行 ; D 、语句一行写不下时,可在任意一空格处回车换行 。

.下面数据中不属于字符型常量的是________。

A 、“\n ” B 、…\0‟ C 、…A ‟ D 、…\t ‟.11.以下选项中,当x 为大于1的奇数时,值为0的表达式__________ 。

A 、 x%2==1B 、 x/2C 、x%2!=0D 、x%2==0 .C 语言源程序名的后缀是__________ 。

A 、 .exeB 、 .C C 、 .objD 、 .cp9.设所有变量均为int型,则表达式(a=5,b=2,b++,a-b)的值是________。

C语言期末考试试卷及答案3

C语言期末考试试卷及答案3

一、单项选择题(本大题共20小题,每小题1分,共20分)1.下列说法正确的是()A.C程序可以从任何一个函数开始执行B.main函数可以被其它函数调用C.一个C程序只能有一个main函数D.main函数中不能有形参2.下列属于正确的标示符是()A.?aB.a=2C.a.3D.a_33.下列数据中属于“字符串常量”的是A.ABCB.“ABC”C.‘abc’D.‘a’4.char型常量在内存中存放的是()A.ASCII代码B.BCD代码C.内码D.十进制代码5.设字符型变量a=3,b=6,计算表达式c=(a^b)<<2后c的二进制值是()A.00011100B.00000111C.00000001D.000101006.若有以下定义:char a;int b;float c;double d;则表达式a*b+d-c的值的类型为()A.floatB.intC.charD.double7.以下程序的输出结果是a=5,b=4,则输入数据的形式应该是()#include“stdio.h”main(){int a,b;scanf("%d,b=%d",&a,&b);printf("a=%d,b=%d",a,b);}A54B5,4C5b=4D5,b=48.C语言中,while和do…while循环的主要区别是()A.while的循环控制条件比do…while的循环控制条件严格B.do…while的循环体至少无条件执行一次C.do…while允许从外部转到循环体内D.do…while的循环体不能是复合语句9.循环语句for(x=0,y=0;(y!=123)||(x<4);x++);的循环执行()A.无限次B.不确定次数C.4次D.3次10.在C语言中,设有数组定义char array[]="China";则array所占的空间为()A.4个字节B.5个字节C.6个字节D.7个字节11.若变量已正确说明为int类型,要通过语句scanf(“%d%d%d”,&a,&b,&c);给a,b,c分别赋值3,5,8,不正确的输入形式是()A.3<enter>B.3,5,8<enter>5<enter>8<enter>C.3<enter>D.35<enter>58<enter>812.char*p="happy new year";char*q=p;int k;for(k=1;k<8;k++){putchar(*q);q++;}上面C程序段的输出结果是()A.happy new yearB.happy newC.happy nD.happyE.appy n13.设double*p[5];则A.p是指向double型变量的指针B.p是double型数组C.p是指针数组,其元素是指向double型变量的指针D.p是数组指针,指向double型数组14.两个指针变量不可以()A.相加B比较C相减D指向同一地址15.对C语言函数描述正确的是A.在C语言中调用函数时,只能把实参的值传给形参,形参的值不能传回给实参B.C函数既可以嵌套定义又可以递归调用C.函数必须有返回值,否则不能使用函数D.函数必须有返回值,返回值类型不定16.设有如下定义,则对data中的a成员的正确引用是()struct test{int a;float b;}data,*p=&data;A.(*p).data.aB.(*p).aC.p->data.aD.p.data.a17.有如下程序(提示:注意宏替换的规则)#define N2#define M N+1#define NUM2*M+1#main(){int i;for(i=1;i<=NUM;i++)printf(“%d\n”,i);}该程序中的for循环执行的次数是()A.5B.6C.7D.818.若有以下定义,则printf(“%d\n”,sizeof(them));的输出是()typedef union{long x[2];int y[4];char z[8];}MYTYPE;MYTYPE them;A.32B.16C.8D.2419.下列语句中,将c定义为文件型指针的是()A.FILE c;B.FILE*c;C.file c;D.file*c;20.下列关于C语言数据文件的叙述中正确的是A.文件由ASCII码字符序列组成,C语言只能读写文本文件B.文件由二进制数据序列组成,C语言只能读写二进制文件C.文件由记录序列组成,可按数据存放形式分为二进制文件和文本文件D.文件由数据流形式组成,可按数据的存放形式分为二进制文件和文本文件二、填空题(本大题共10小题,每小题2分,共20分)1.在定义变量的同时给变量赋予初值就称为___________________________________ 2.下面程序段的输出结果是___________________________________________ int a=28;a=a&21;printf(“%d%o\n”,a,a);3.能正确表示0≤a≤10的逻辑表达式是_________________________________4.若有定义int a[3],*p;则使p指向数组a的赋值语句是_______________________ 5.strcmp函数的功能是________________________________________6.写出数学式a acbbx24 2-+-=的C语言表达式________________________________ 7.将以下程序写成三目运算符的表达式是____________________________________if(a>b)max=a;else max=b8.设有定义如下:#define F(N)2*N,则表达式F(2+3)的值是_____________________. 9.在C语言中,指针运算符为___________________,取地址运算符________________。

C期末考试试卷及参考答案

C期末考试试卷及参考答案

.性,在下面表格中对—学应的题号下填入是非选择,—若正确,则打钩(√);否则,打叉(×)。

—线题号 1 2 3 4 5 6 7 8 9 10—是/否——1. 说明函数原型时不需要指明每个函数参数的名字,只需要说明每个参数的类型和—返回值类型就可以了。

— 2. 函数定义中的形参的作用域是该函数的函数体。

_—__—4. 释放。

elete 来new 动态申请的存空间,必须用d3. 用__—_构造函数和析构函数都可以声明为虚函数。

_—_ 5. 在公有继承中,基类中的公有成员和私有成员在派生类中都是可见的。

_—__类的静态数据成员需要在定义每个类的对象时进行初始化。

6. —名—7. 使用关键字class 定义的类中缺省的访问权限是私有(private)的。

姓—能具有8. 在基类中被说明为虚函数的类的成员函数必须在每个派生类中说明为虚函数,才—多态的特征。

—订程序将流对象看作是文件的化身。

9. C++程序中,—的值不10.如果程序中有多处要抛掷异常,应该用不同的操作数类型来相互区别,操作数—能用来区别不同的异常。

—_—__—_分) 1. 5 分,共15 二、填空题(每小题_—__—以须变量的标识,由组成,而且必量1 .变名是__—_开头。

_—级开始。

2.有了函数原型,函数的作用域就不是从开始,而是从—班。

3.获取一个变量的地址所采用的操作符是装—4.使用const 语句定义一个标识符常量时,则必须对它同时进行。

—,在类外不通过对象名访问该成b AB 中有一个公用属性的静态数据成员b5.假定类—的写法为b 。

员b —_—句的作用为6.typedef 语。

__—_ MFC 7.平时所提到的使用M编程,这里的FC 是的缩写。

_—_8.若要在程序文件中进行标准输入输出操作,则必须在开始的命令中# include _—__—使用头文件。

_—.9C++中,若将操作符插入到输出流中,则以十六进制格式输出。

院—学10.。

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

40分)1. ______不是属于面向对象程序设计的特性A. 抽象性B. 数据相关性C. 多态性D. 继承性2. 将对某一类数据的处理算法应用到另一类数据的处理中,要用到C++的______A. 类B. 虚函数C. 运算符重载D. 模板3. C++与C语言最根本的不同之处在于_______A. 使用了类B. 能够实现变量自动初始化C. 支持软件重用D. 支持接口重用4. 动态内存分配的主要目的是_______A. 使程序按动态联编方式运行B. 正确合理的使用内存C. 提高程序的运行速度D. 提高程序的可维护性5. 在C++函数的形参前加const关键字,是为了提高函数的_______A. 数据封装性B. 可理解性C. 可维护性D. 可重用性6. 函数重载的目的是________A. 实现共享B. 使用方便,提高可读性C. 提高速度D. 减少空间7. 从程序片断:char name[] = "C++"; course(name);可判断函数course的调用采用的是_______A. 传值调用B. 带缺省参数值的函数调用C. 引用调用D. 传址调用8. 用来说明类中公有成员的关键字是________A. publicB. privateC. protectedD. friend9. 如果一个类的成员函数print()不修改类的数据成员值,则应将其声明为A. void print() const;B. const void print();C. void const print();D. void print(const);10. 下列关于构造函数的论述中,不正确的是_______A. 构造函数的函数名与类名相同B. 构造函数可以设置默认参数C. 构造函数的返回类型缺省为int型D. 构造函数可以重载11. 在程序代码:A::A(int a, int *b) { this->x = a; this->y = b; }中,this的类型是______A. intB. int *C. AD. A *12. 内存泄漏是指_______A. 内存中的数据出现丢失B.试图释放一个已经释放了的动态分配的堆内存C. 函数中局部变量所占的栈内存没有及时回收D. 动态分配的堆内存在程序退出后始终被占用13. 从程序片断:student zhangsan("张三","M",22); zhangsan.id("2005131000");可判断id是一个________A. 私有成员数据B. 私有成员函数C. 公有成员数据D. 公有成员函数14. 友元函数_______A. 可以被声明为constB. 没有this指针15. 若一个类的成员函数前用static关键字修饰,则该成员函数________A. 可以被声明为constB. 没有this指针C. 可以访问该类的所有成员D. 只能用对象名来调用16. C++是用_______实现接口重用的A. 内联函数B. 虚函数C. 重载函数D. 模板函数17. 公有继承的派生类对象可以访问其基类的________A. 公有成员B. 公有成员及受保护成员C. 受保护成员D. 私有成员18. 设置虚基类的目的是________A. 简化程序B. 使程序按动态联编方式运行C. 提高程序运行效率D. 消除二义性19. 下列关于纯虚函数和抽象类的描述中,不正确的是________A. 纯虚函数是一个没有具体实现的虚函数B. 抽象类是包括纯虚函数的类C. 抽象类只能作为基类,其纯虚函数的实现在派生类中给出D. 可以定义一个抽象类的对象20. 关于运算符重载的不正确的描述是________A. 运算符重载函数是友元函数B. 体现了程序设计的多态性C. 增加新的运算符D. 使运算符能对对象操作二、下面的程序是关于CBook类的一个定义,试改正程序中的错误。

(共10分)#include <iostream.h>#include <math.h> #inlcude <string>class CBook{private:char *p_book;public: p_book=new char[strlen(p_val)+1]CBook(const char *p_val) { p_book = new char[strlen(p_val)]; strcpy(p_book, p_val); } void print() const { cout << p_book << endl; }~CBook() { delete [] p_book; }};void main(){char book_title[60];CBook *p_book_obj;cout << “Enter book title: ”;cin >> p;CBook abook(p);p_book_obj = &abook;p_book_obj->print();}#include <iostream.h>class CJournal{public:CJournal() { cout << “Journal default constructor” << endl; }virtual void subscribe() = 0;void read() { cout << “Read paper” << endl; }~CJournal() { cout << “Journal default destructor” << endl; }};class CComputerDesign : public CJournal{public:CComputerDesign () {cout << “《Computer Design》default constructor” << endl; } virtual void subscribe() { cout << “Subscribing 《Computer Design》” << endl; } void read() {cout << “Reading 《Computer Design》” << endl; }~CComputerDesign() { cout << “《Computer Design》default destructor” << endl; }};void main(){CComputerDesign journal1;CJournal *p_journal;journal1.subscribe();journal1.read();// ①p_journal = &journal1;p_journal->subscribe();p_journal->read();}1.当程序运行到①处时,写出程序运行的输出结果 (3分)2. 当程序结束时,程序会在第1问的基础上增加哪些输出。

(4分)3. 若在主函数中定义一个对象CJournal journal;程序编译时会否出错?为什么?(3分)四、编程题(共40分)1. 定义一个商品类CGoods,其中包含商品号(long no)、商品名(char *p_name)、商品价格(double price)三个数据成员,以及相应的构造函数、拷贝构造函数、析构函数、#include <string.h>using namespace std;class CCourse{private:long no;char *p_name;float credit;public:CCourse(long no_val,char p_val,float credit_val); CCourse(const CCourse &r_course);~CCourse(){delete p_name;}void print() const;};CCourse:CCourse(long no_val,char p_val,float credit_val) {no=no_val;p_name=new char[strlen(p_val)+1];strcpy(p_name,p_val);credit=credit_val;}CCourse:CCourse(const CCourse &r_course){no=r_course.no;p_name=new char[strlen(r_course.p_name)+1];strcpy(p_name,r_course.p_name);credit=r_course.credit;}void CCourse:print() const{cout<<"Course number"<<no<<endl;cout<<"Course name"<<p_name<<endl;cout<<"Course credit"<<credit<<endl;}2. 为CGoods类增加一个商品总数(int count)数据成员,并增加一个成员函数getCount()获取count的值,编写一个友元函数getName()获取商品名称p_name。

做如上修改后,重新实现CGoods类(与第1问相同的不用再重复)。

(10分)3. 为CGoods类定义小于运算符(‘<’)和不小于运算符(‘>=’)两个运算符重载函数。

CGoods类对象大小的比较是根据其商品价格(price)的值的大小来实现的。

(与第2问相同的不用再重复)(10分)4. 以CGoods类为基类,派生出服装类CClothes和食品类CFood两个派生类,并在这两个类中分别增加一个表示品牌的指针数据成员(char *p_brand)和表示用途的成员函数(void usedFor()——可分别输出一条表示服装和食品用途的信息)。

写出CClothes类和CFood类的完整定义(包括构造、析构和usedFor()成员函数的实现)。

(10分)五、附加题(共30分。

相关文档
最新文档