c++复习资料及答案.doc_第1页
c++复习资料及答案.doc_第2页
c++复习资料及答案.doc_第3页
c++复习资料及答案.doc_第4页
c++复习资料及答案.doc_第5页
免费预览已结束,剩余4页可下载查看

下载本文档

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

文档简介

1、 C+复习资料及答案一、判断题1、在变量定义int sum , SUM;中 sum和 SUM是两个相同的变量名。 ( N)2、字符串” china ”在内存中占据的存储空间是5 个字节。(N)3、在 C+语言中,” A”和 A是等价的。 ( N )4 、 C+表达式 4/7 和 7 的值是相等的,且都为double 型。( N)5、关系表达式a=bc 等价于 a=(bc) ,同时也等价于 a=bc 。( N )6、continue语句和 break 语句的区别是: break语句提前跳出switch结构或结束循环的执行; continue 语句只结束本次循环,而不是终止整个循环的执行。( Y)

2、7、数组是一种 构造型数据 ,即是 若干相同类型的数据的集合。()8、C+语言中, 二维数组 中元素排列的顺序是: 按行存放 ,即在内存中先顺序存放第一行的元素,再存放第二行的元素。 ()9、 #include“” 的作用是将说明标准输入输出流对象的头文件包含到当前源文件中来。(Y )10、 C+语言中允许函数“嵌套调用”和“递归调用”,所谓“递归调用”就是指:在调用一个函数的过程中又出现直接或间接地调用该函数本身。( Y)二、选择题1、由C+源程序文件编译而成的目标代码文件的缺省扩展名为(C)A).cppB).exeC).objD).lik2、设 xA).C).3、设有和 y 均为 bool

3、 类型 ( bool 类型 :1 或 0),则 x&y 为真的条件是(它们均为真B).其中一个为真它们均为假D).其中一个为假int i;则表达式i=1,+i,+i|+i,i的值为(C )A)A).1B).2C).3D).44、设有int i;则表达式(i=1,i=10)i+|+i:+i的值为 (A)解析: (i=1,i=10)i+|+i:+i(i=1,i=10)是真的情况表达式的值=i+|+i是假的时候 =+i(i=1,i=10)这个是逗号运算符最终i=10 ,是真所以表达式的值是i+|+i = 10 |12 = 1A).1B).2C).3D).105、设有 int a =10,11,12,

4、*p=&a0;则执行完 *p+;*p+=1; 后 a0,a1,a2的值依次是 ()A).10,11,12B).11,12,12C).10,12,12D).11,11,126、设 a、b 和 c 都是 int型变量 , 且 a=3,b=4,c=5, 则下列表达式中 , 值为 0 的表达式是 ()A).A&B 1B).a=b|b+c&b-c 1D). a=a+b7、若x 和 y都是int型变量 ,x=100,y=200,则下面程序片段cout(x,y)s;9、若有 :int a6=4,5,6,9,5,7,*p=a, *q=p;则对数组元素的错误引用是(A). a4B). *(p+4)C). *a+

5、( 变量才能加减)D). *q+( char)10、下列不正确的转义字符是()A).B).C).074D).011、假定a 和b 为int型变量, 则执行以下语句后b 的值为()a=1; b=10;do b-=a; a+; while (b-0);A). 9B). 2C). -1D). 812、对于结构中定义的成员,其隐含访问权限为()A). publicB). protectedC). privateD). static13、设 P1 和 P2 是指向同一个int型一维数组的指针变量,k 为 int型变量 , 则不能正确执行的语句是()A).k=*P1+*P2;B).p2=k;C).P1=P

6、2;D).K=*P1 * (*P2);14、设有如下定义:int arr=6,7,8,9,10;int * ptr;则下列程序段的输出结果为()ptr=arr;* (ptr+2)+=2;cout*ptr*(ptr+2)1 & y!=0的相反条件为。14、过程化程序设计方法中,程序由三种基本结构,即:顺序结构、。15、在 C+中,若需要在程序文件中进行标准输入输出操作,则必须在开始加入预处理命令,若使用到数学库中的函数时,要在源程序的开始加入预处理命令。16、 C+语言中用来存放变量地址的变量称作。17、int*p10;的含义是。18、 int *p;的含义是。四、简答题1、请用 C+语言的表达

7、式表示下列代数式。(1)x3 sin 55d(2)1 ea b(e=3ba b 2h(3)4aht(4)ea b ? sin 50(e=( axax 2 )(5) ln 52、根据要求完成下列各题。(1) 用两种方法实现一个字符串str ,并赋以初值” welcome to Nanjing ! ”。(2)定义结构体类型date,该结构体包含的成员为year ( 整型 ) 、 month ( 整型 ) 、day( 整型) ,再使用 typedef将结构体类型date 等价成 DATE,最后使用DATE定义一个变量pdate 。五、程序分析题1、写出下列程序运行结果:(1) #include (

8、4分)void main( )int x=5,y=8,*px,*py;px=&x,py=&y;coutnum1=”*px, ”num2=*py; ;if(xy) swap1(x,y);coutnum1=”*px, ”num2=*py; ;if(xy) swap2(px,py);coutnum1=”*px, ”num2=*py; ;if(xy) swap3(px,py);coutnum1=”*px, ”num2=*py; ;swap1(int a,int b)int t;t=a; a=b; b=t;coutnum1=”a, ”num2=b; ;swap2(int *p,int *q)int *t

9、;t=p; p=q; q=t;coutnum1=”*p, ”num2=*q; ;swap3(int *p,int *q)int t;t=*p;*p=*q;*q=t;coutnum1=”*p, ”num2=*q; ;(2 ) #include“”( 3 分)main(int argc,char *argv ) int i;cout ”argc= ”argc; ;for(i=0;i=argc-1;i+) coutargvi; ;若上面的程序编译 连接后生成可执行文件,若输入以下命令行abc filel file2( 表示回车)注:文件的路径可以不考虑(3) #include ( 4 分)class

10、 A int a, b;public: A()a=b=0;A( int aa , int bb ) : a(aa),b(bb)cout ”a=”a”,A() cout”Destructor!”b=”bendl;”endl;void main( ) A x , y(2 , 3) ; /对象x , y消亡后分别自动调用析构函数A( )2、试分析下列程序或函数的功能。( 4分)(1) #include void main( ) char str81,*sptr; int i;for(i=0; i80; i+) stri=( ); if(stri=n) break;stri= 0;sptr=str;w

11、hile(*sptr) cout(*sptr+);3、程序改错题:(4 分 )从键盘输入一个分数(0100),判断它属于哪个分数段,并输出分数段字母代号。#include main( )intnum; char grade;coutnum;if(grade=90)&(grade=100)grade=”A”;cout “Thegradeis: ”=80)grade=”B”; cout=70)grade=”C”; cout=60)grade=”D”; coutelsegrade=”E”; cout“The grade is: ”grade;“The grade is:”grade;“The gra

12、de is: ”grade; “The grade is: ”grade;4、程序填空题:( 每空 1 分, 共 8 分 )( 1)以下程序通过调用自定义函数 scopy( ) 将字符串 s1 复制到字符串 s2 ,并输出显示,请填空。#include“”void scopy (,)while(*p!= 0);*q=0;void main( ) char *s1=Nanjing, China; char s220; coutnThe s1 is:s1;coutnThe s2 is:s2;(2) class Aint *a ;int n;public: A(int nn=0) : n(nn) i

13、f(n=0) a=0;else a=; /分配长度为n 的动态数组void seta(int *aa)for (int i=0; in; i+) ai=aai ;/定义析构函数,释放动态数组空间 ;六、编程题1、编制一个完整的程序: 从键盘输入10 个整型数组元素, 调用自定义函数void sort(intarray , int n )对其进行由大到小排序, 最后将排序结果输出到显示器终端,要求自定义函数 sort( )中用冒泡法实现排序。04 财计 C+程序设计语言答案一、判断题(10 分)1 5 :F, F,F,F,F2 10 :T, T,T,T,T二、选择题(25 分)1 5:C,A,

14、C,A,C6 10 :D,A, C,C,C11 15 :D, A,B,D,A16 20 :C, D,D,A,A三、语法填空题(15 分)1、 AB | AC。2、值传递和 地址传递。3、不相同。4、已存在同类型对象的引用5、 函数的说明部分和函数体部分。6、 main函数的入口地址处。7、注释说明,以增加程序的可读性。8、 下标方式和 指针方式。9、字符串结束标志010、自动类型转换和 强制类型转换。11、左结合性和 右结合性。12、198。13、x=1 | y=0。14、选择结构 、循环结构。15、 #include , #include “” 。16、指针变量。17、定义指针数组p,它有1

15、0 个指向整型数据的指针元素组成。18、定义一个指针变量p,它指向一个指向整型数据的指针变量。四、简答题(16 分)1、请用 C+语言的表达式表示下列代数式。(1) x*x*x*sin(55*180)/*d)(2) 3*exp(a-b)(3) (a+b*b*h-b/4)/(a+h/t)(4) exp(a+b)*sin(50*180)(5) log(a+x/*sqrt(a+x*x) 2、根据要求完成下列各题。(1) static char str =”welcome to Nanjing ! ” ; char *str= ”welcome to Nanjing ! ” ;(2) struct d

16、ateint year;int month;int day;typedef struct date DATE;DATE pdate;五、程序分析题1、( 1)、各 cout 按执行次序输出的结果为5,8; 8,5; 5,8; 8,5; 5,8; 8,5; 8,5( 2)、程序执行后的输出结果是: argc=3; ; file1; file2;( 3)、程序的输出结果是: a=2, b=3 Destructor!Destructor!2、程序的功能是:从键盘上输入一行字符, 存入一个字符数组中, 然后输出该字符串。3、改错题:#include main( )intnum; char grade;

17、coutnum;if(grade=90)&(grade=80)grade=elseif(grade=70)grade=”A”; ”B”; ”C”;cout “The grade is: ”grade;cout “The grade is: ”grade;cout “The grade is: ”=60)is: ”grade;grade=”D”;cout “Thegradeelsegrade=”E”;cout “Thegradeis:”grade;endifendifendifendif4、填空题:(1) 以下程序通过调用自定义函数 scopy( ) 将字符串 s1 复制到字符串 s2,并输出显示,请填空。char *p , char *q*q=*p;p+;q+;s

温馨提示

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

评论

0/150

提交评论