C++期末考试试卷及参考答案
吉林师范成人教育《C语言程序设计试题》期末考试复习题及参考答案

吉林师范成人教育期末考试试卷《C语言程序设计》A卷年级专业姓名分数一、选择题(每题1分共10分)1. 一个C语言程序是由。
A)一个主程序和若干个子程序组成 B)若干函数组成C)若干过程组成 D)若干子程序组成2. 不是整数。
下面不正确的字符串常量是。
A)'abc' B)"12'12" C)"0" D)" "3. 下面四个选项中,均是合法的浮点数的选项是。
A)+1e+1 B)-.60 C)123e D)-e35e-9.4 12e-4 1.2e-.4 .8e-403e2 -8e5 +2e-1 5.e-04. 以下正确的叙述是。
A)在C程序中,每行只能写一条语句B)若a是实型变量,C程序中允许赋值a=10,因此实型变量中允许存放整型数C)在C程序中,无论是整数还是实数,都能被准确无误地表示D)在C程序中,%是只能用于整数运算的运算符5. 根据定义和数据的输入方式,输入语句的正确形式为。
已有定义:float f1,f2;数据的输入方式:4.523.5A)scanf("%f,%f",&f1,&f2); B)scanf("%f%f",&f1,&f2);C)scanf("%3.2f %2.1f",&f1,&f2); D)scanf("%3.2f%2.1f",&f1,&f2);6. 下面四个选项中,均是正确的数值常量或字符常量的选项是。
A)0.0 B)"a" C)'3' D)+0010f 3.9e-2.5 011 0xabcd8.9e 1e1 0xFF00 2e2'&' '\"' 0a 50.7. 若x、i、j和k都是int型变量,则计算下面表达式后,x的值为。
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语言》2020秋期末考试试题答案

电子科技大学《C语言》2020秋期末考试试题答案试卷总分:100 得分:100一、单选题 (共 35 道试题,共 70 分)1.若有说明int a[][3]={1,2,3,4,5,6,7};则a数组行数的大小为()。
A.2B.3C.4D.不确定答案:B2.若调用一个函数,且此函数中没有return语句,则正确的说法是该函数()。
A.没有返回值B.返回若干个系统默认值C.返回一个用户所希望的函数值D.返回一个不确定的值答案:D3.在“文件包含”预处理语句的使用形式中,当#include后面的文件名用""括起时,寻找被包含文件的方式是A.直接按照系统设定的标准方式搜索目录B.先在源程序所在目录搜索,再按照系统设定的标准方式搜索C.仅仅搜索源程序所在目录D.仅仅搜索当前目录答案:B需要代做加微boge306194.C语言规定:在一个源程序中,main函数的位置()。
A.必须在最开始B.必须在系统调用的库函数的后面C.可以任意D.必须在最后答案:C5.以下程序段的作用是()。
int a[]={4,0,2,3,1},i,j,t; for (i=1;i=0&&t>a[j]) {a[j+1]=a[j];j- -;} a[j+1]=t; }A.对数组a进行插入排序(升序)B.对数组a进行插入排序(降序)C.对数组a进行选择排序(升序)D.对数组a进行选择排序(降序)答案:B6.以下说法正确的是()。
A.x'+5是一个错误的表达式B.C语言不允许类型的混合运算C.强制类型转换时,类型说明符必须加括号D.(int)x+y?和(int)(x+y)是完全等价的表达式答案:C7.以下叙述不正确的是()。
A.一个C源程序可由一个或多个函数组成B.一个C源程序必须包含一个main函数C.C程序的基本组成单位是函数D.在C程序中,注释说明只能位于一条语句的后面答案:D8.下面函数调用语句含有实参的个数为()。
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语言程序设计期末考试试卷及答案

__ _ _ _ _ _ _ _ _ _ _ _ _ _号学_ _ _ _ _ _ _ _ _ _ _ _ _ _ _名姓班_ _ _ _ _ _ _ _ _ _ _级_ _ _ _ _ _ _ _ _ _院学_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _四川师范大学计算机科学学院2012~2013 学年度第二学期期末考试⋯C语言程序设计试卷试卷 A⋯⋯⋯答卷说明:⋯1、本试卷共 6 页,答题纸 3 页, 4 个大题, 35 个小题,满分 100 分,⋯⋯120 分钟完卷。
⋯⋯2、闭卷考试,所有的答案都一定写在答题纸上,判卷以答题纸上答案⋯为准。
⋯效3、本试卷合用于 2011 级 1、2、3 班。
⋯)(无号一二三四分分人⋯⋯⋯⋯题分数⋯⋯⋯⋯答得分卷人⋯⋯⋯⋯)内一、( 在每小的四个答案中,出一个正确答案,并将正确答案的封(序号填在干的括号内。
每小 1 分,共 20 分)⋯⋯1、在 C 言中,以下符中合法的是()⋯线A).-int B). in1_3C).A_B!D D).const⋯⋯⋯2、不属于 C 言基本数据型的是 ()⋯A). int B). union C). char D). unsigned⋯封⋯⋯3、下边是宏定的描绘。
不正确的选项是()⋯⋯密A).宏不存在型,宏名无型,它的参数也无型)密B).宏替不占用运转(C).宏替不过字符串的代替⋯D).宏替先型,型一致才能够替⋯⋯⋯4、 C 言中,″\\xfds ″在内存中占用的字数是 ()⋯⋯A).3B).4C).5D).6⋯⋯⋯5、int x; 行 printf(″n%x″ ,~x^x);的果是 ()⋯A). ffffffff B). ff C). 0D). 1⋯⋯6、于 while 句,的法是 ()A). 用条件控制循体的行次数B). 循体起码要行一次C).循环体有可能一次也不履行D). 循环体中能够包括若干条语句7、履行以下语句后输出的结果是()int a=8,b=7,c=6;if(a<b)if(b>c){a=c;c=b;}printf("%d,%d,%d\n",a,b,c);A).6 , 7, 7B).6, 7, 8C).8,7, 6D).8, 7, 88、设 int a=9,b=20 ;则 printf(″ %d,%dn″ ,a,----b) ;的输出结果是 ()A).9 , 19B).9, 20C).10,19D).10, 209、设 static char x[ ]=″ 12345 ″ ,y[ ]={′ 10′;},那′么2′( , ′)3′ , ′ 4′ , ′ 5′ , ′A).x 数组的长度等于y 数组的长度B).x数组的长度大于y 数组的长度C).x 数组的长度少于y 数组的长度D).x数组与 y 数组的储存地区同样10、设 int i,x[3][3]={1,2,3,4,5,6,7,8,9};则下边语句的输出结果是()for(i=0;i<3;i++)printf(″ %d″ ,x[i][2-i]);A).147B).159C).357D).36911、履行完以下语句后,n 的值是 ()int n;for (n=0 ; n<100 ; n=2*n+1);A).125B).126C).127D).12812、有以下语句: int a=6;a+=a- =a*a;printf(“ %d输”出,a);结果()A). –132B).–60C). -24D). 013、为了连结两个字符串s1 与 s2,应该使用 ( )A). strcat( s1 , s2 )B). strcpy( s1, s2 )C). strlen( s1, s2 )D). strcmp( s1, s2 )14、设 int a,*p ;则语句 p=&a; 中的运算符“ &”的含义是 ()A). 位与运算B).逻辑与运算C).取指针内容D). 取变量地点15、下边输出的结果为 ()i nt a=13, b=64;printf(“n%d”,!a || (b>>3) );A).13B).64C).1D).016、以下定义正确的选项是()A).enum t={a,b}x;B). enum t{1,2}x;C). enum { ′ +-′ ,}x;′D). enum t{a,b}x;17、设有定义:struct u{int a[4];float b[3]; char c[16];}aa;⋯⋯_ ⋯ __ ⋯ _ _ ⋯ _ ⋯__⋯__ ⋯ _ ⋯__⋯__⋯号⋯学)_(_ ⋯ _ ⋯__⋯__⋯__ ⋯ _ ⋯__⋯__⋯_⋯名⋯姓⋯⋯)班封_(__⋯__ ⋯ _ ⋯__⋯__⋯_⋯级⋯_ _ ⋯ __ ⋯ __ ⋯ _ _ ⋯ _ ⋯_院)密学_(_ ⋯ __ ⋯ __ ⋯ _ _ ⋯ _ ⋯__⋯__⋯__ ⋯ _ ⋯__⋯⋯⋯printf( ″%dn″,sizeof(aa));的出是 ( )A).32B).36C).12D).818、数据 -54.78 在文本文件中占用的字个数是()A).4B).5C).6D).819、在宏定 #define p(r) 3.14*r中,宏名是 ()A).p B). p(r)C). 3.14*r D).p(r) 3.14*r20、要翻开一个已存在的用于改正的非空二制文件“ hello.txt ”,正确句是 ( )A). fp=fopen( "hello.txt ","r" )B). fp=fopen( "hello.txt ","ab+" )C). fp=fopen( "hello.txt ","w" )D). fp=fopen( "hello.txt ","r+" )效得分卷人无二、填空 ( 仔每小的明和源代,并将正确答案写到答上的号。
大学《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语言程序设计基础》期末考试试卷及答案

《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语言期末考试试卷与答案

C 语言期末考试试卷(A)一、单项选择题(本大题共20 题,每题2 分,共 40 分)1、以下不是 C 语言的特点的是 ( A )A、 C 语言简洁、紧凑B、能够编制出功能复杂的程序C、 C 语言可以直接对硬件进行操作D、 C 语言移植性好2、以下不正确的C语言标识符是( D )A、 ABC B 、 abc C 、 a_bc D 、 ab.c3、一个 C语言程序是由( B )A、一个主程序和若干子程序组成B、函数组成C、若干过程组成D、若干子程序组成4、一个算法应该具有“确定性”等 5 个特性,对另外 4 个特性的描述中错误的是( A )A、有零个或多个输入B、有零个或多个输出C、有穷性D、可行性5、设变量 a 是整型, f 是实型, i 是双精度型,则表达式10+‘a’+i*f 值的数据类型为( C )A、 int B 、 float C 、 double D 、不确定6、在 C 语言中, char 型数据在内存中的存储形式是( C )A、补码 B 、反码 C 、源码 D 、 ASCII 码7、有如下程序,输入数据:12345M678< cR>后( <CR>表示回车), x 的值是( ) 。
#include<stdio.h>main(){int x;float y;scanf("%3d%f",&x,&y);}A、 12345 B 、123 C 、45 D 、 3458、若有以下定义int a,b; floatx,则正确的赋值语句是( )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,10 B 、 9,10 C 、 11,9 D 、 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,89 11、下列运算符中优先级最高的是 ( )A 、 <B 、十C、 %D 、!=12、设 x 、y 和 z 是 int 型变量,且 x =3, y = 4, z = 5,则下面表达式中值为 0 是 ( ) 。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、是非题(每小题 1. 5 分,共 15 分) 说明:判断各小题说法的正确性,在下面表格中对应的题号下填入是非选择, 若正确,则打钩(√);否则,打叉(×)。
返回值类型就可以了。
2. 函数定义中的形参的作用域是该函数的函数体。
3. 用 new 动态申请的内存空间,必须用 delete 来释放。
4. 构造函数和析构函数都可以声明为虚函数。
5. 在公有继承中,基类中的公有成员和私有成员在派生类中都是可见的。
6. 类的静态数据成员需要在定义每个类的对象时进行初始化。
7. 使用关键字 class 定义的类中缺省的访问权限是私有(private )的。
8. 在基类中被说明为虚函数的类的成员函数必须在每个派生类中说明为虚函数,才 能具有多态的特征。
9. C++程序中,程序将流对象看作是文件的化身。
10.如果程序中有多处要抛掷异常,应该用不同的操作数类型来相互区别,操作数 的值不能用来区别不同的异常。
二、填空题(每小题 1. 5 分,共 15 分) 1 . 变 量 名是 变 量的 标识 , 由 组 成 , 而 且必 须 以 开头。
2.有了函数原型,函数的作用域就不是从 开始,而是从 开始。
3.获取一个变量的地址所采用的操作符是 。
4.使用 const 语句定义一个标识符常量时,则必须对它同时进行 。
5.假定类 AB 中有一个公用属性的静态数据成员 bb ,在类外不通过对象名访问该成 员 bb 的写法为 。
6.typedef 语句的作用为 。
7.平时所提到的使用 MFC 编程,这里的 MFC 是 的缩写。
8.若要在程序文件中进行标准输入输出操作,则必须在开始的 # include 命令中 使用 头文件。
9.C++中,若将 操作符插入到输出流中,则以十六进制格式输出。
10.C++程序中,异常处理程序的主要任务是 。
三、单选题(在备选答案中选出一个正确答案填入括号内,每小题 2 分,共 20 分) 1.C++对 C 语言作了很多改进,下列描述中使得 C 语言发生质变,从面向过程变成 了面向对象的是( )。
学院 __________ 班级___________ 姓名___________学号____________——————————————装——————————订———————————————线—————————A.增加了一些新的运算符 B. 允许函数重载,并允许设置缺省参数C.规定函数说明必须用原型 D. 引进了类和对象的概念2.当一个函数无返回值时,定义它的函数的类型是( )。
A. voidB. intC. 无D. long 3.下列不是构造函数特征的是()。
A. 构造函数的函数名与类名相同B. 构造函数可以重载C. 构造函数可以设置缺省参数D. 构造函数必须指定返回类型4.关于成员函数特征的下列描述中,错误的是()。
A.成员函数一定是内联函数B.成员函数可以重载C.成员函数可以设置缺省参数值D.成员函数可以是静态的5.关于new 运算符的下列描述中,错误的是()。
A. 它可以用来动态创建对象和对象数组B. 使用它创建的对象或对象数组可以使用运算符delete 删除C. 使用它创建对象时要调用构造函数D. 使用它创建对象数组时必须指定初始值 6.派生类的对象对它的基类成员中可以访问的是()。
A. 公有继承的公有成员B. 公有继承的私有成员C. 公有继承的保护成员D. 私有继承的公有成员7.下列描述中,正确的是().A. 虚函数是一个static 类型的成员函数B. 虚函数是一个非成员函数C. 抽象类是指具有纯虚函数的类D. 抽象类可以说明其对象8.假定要对类AB 定义加号操作符重载成员函数,实现两个AB 类对象的加法,并返回相加结果,则该成员函数的声明语句为 ( )。
A. AB operator+(AB & a, AB & b)B. AB operator+(AB & a)C. operator+(AB a)D. AB & operator+( ) 9.下列不属于VC消息映射内容的是( )。
A. 通过将DECLARE_MESSAGE_MAP 添加到类声明,声明消息映射B. 改写MFC相关类的虚函数C. 放置标识消息的宏来执行消息映射D. 添加成员函数来处理消息 10.下列关于VC++编程描述中,错误的是()。
A. Windows 是一个基于事件驱动、基于消息的操作系统。
B.Windows 程序始终是程序而不是操作系统决定何时调用哪个函数。
C.对于使用VC 向导生成的程序框架,我们也可以用手工的方式写出。
D.MFC 类库其实是对windows API 函数的封装。
四、根据下面各小题题目要求进行简单回答(第1 小题6 分,第2 小题3 分,第3 小题6 分,共15 分)(1) 已知类B 和类D,它们的类关系如下。
请以类对象b1,d1 和指针pb1 为例简要说明C++赋值兼容规则。
(本小题 6 分)class B{ … };class D :pubic B{ … };B b1, * pb1;D d1;答:a)b)C)(2) 下列的程序定义了一个交换两个浮点数的函数swap,并在主函数中调用这个函数进行两个浮点数的交换(本小题 3 分)void swap (float a , float b){float temp=a;a=b; b=temp;}void main( ){float a=1,b=2;swap ( a, b );}错误为:改正方法为:(3) 写出下面程序运行结果。
(本小题 6 分)#include <iostream.h>class A{public:virtual void act1() { cout<<"A::act1() called. "<<endl; }void act2() { act1(); }};class B : public A{public:void act1() {cout<<"B::act1() called. "<<endl;}};void main(){A a,*p;B b;p=&b;b.act1 ();p->act1();p->act2 ();}答:五、下面的程序共有17 行,程序的每行前面加上了行号。
程序中变量num、i 、temp、对象cout 和函数func()的作用域范围分别是什么?在程序的下面用行号来回答。
(每小题1 分,共10 分)1.#include <iostream.h>2.int num;3.void func();4.void main()5. {6.char name[20];7.int i;8. for(i=0; i<20; i++)9. {10.char temp;11.temp=name[i];12.cout<<temp;13. }14. }15. void func()16.{17. cout<<”A function!”;18. }回答:num 的作用域为从第行到第行。
i 的作用域为从第行到第行。
temp 的作用域为从第行到第行。
cout 的作用域为从第行到第行。
func 的作用域为从第行到第行。
六、程序回答题(每小题1 分,共5 分)说明:读懂程序,为便于提问,程序每行前面加有行号,请对所提的问题做出准确解答。
1.#include <iostream.h>2.int CircleArea()3.{4.double *pd=new double;5.if(!pd)6.{7.cout<<"Error Memory Allocation!"<<endl;8.return 1;9.}10.double &rd=*pd;11.cout<<"The radius is: ";12.cin>>rd;13.cout<<"The Area of Circle is: "<<rd*rd*3.14<<endl;14.delete &rd;15.return 0;16.}17.void main()18.{19.if(CircleArea())20.cout<<"The programn failed!"<<endl;21.else22.cout<<"The programn successed!"<<endl;23.}请写出下列问题答案:a) 第4 行起何作用?答:b) 第5-9 行可否省去?并说明原因。
答:c) 第14 行起何作用?答:d) 此程序功能是什么?答:e) 解释14 行中&符号的意义?答:七、请完成下面2 个运算符重载函数,并对程序最后一行分析错误原因并改正(本题运算符重载函数各3 分,分析错误原因并改正4 分,共10 分)给定整数类:class Integer{public:void Set ( int ii=0 ) { i=ii; }Integer operator + ( int c );Integer operator + (Integer & c);void Display() {cout<<i<<endl;}private:int i;};请完成上面2 个运算符重载函数,并以下面的主函数进行测试。
void main(){Integer A, B, C;A.Set(20);C.Set(10);B=A+4;B.Display();B=A+C;B.Display();B=4+A; // 此行代码有误,请分析错误原因并改正}八、编程题。
声明一个shape 抽象类,在此基础上派生出Rectangle 和Circle 类,二者都有GetArea ( ) 函数计算对象的面积,按下面的要求完成程序的编制工作。
( 1 ) Rectangle 类有m_Width, m_Height 属性;( 2 ) Circle 类有m_Radius 属性;( 3 ) 分别编写Rectangle 类和Circle 类带默认参数的构造函数;( 4 ) 编写主函数对Rectangle、Circle 类进行测试,使它们以统一的操作界面输出面积;(提示:利用for 循环进行输出)( 5 ) 回答将Shape 类声明为抽象类的方法及意义。