C++语言程序设计-复习资料
- 格式:doc
- 大小:157.00 KB
- 文档页数:8
C程序设计复习资料含复习资料一、C 语言基础1、数据类型C 语言中有多种数据类型,包括整型(int)、浮点型(float、double)、字符型(char)等。
了解不同数据类型的取值范围和存储方式是编程的基础。
例如,整型可以分为短整型(short int)、整型(int)和长整型(long int),它们的存储空间和取值范围各不相同。
2、变量和常量变量用于存储程序运行过程中可以改变的值,常量则是固定不变的值。
在 C 语言中,变量需要先声明后使用,常量可以用宏定义或者使用关键字 const 来定义。
3、运算符和表达式C 语言中的运算符包括算术运算符(+、、、/、%)、关系运算符(>、<、>=、<=、==、!=)、逻辑运算符(&&、||、!)等。
掌握这些运算符的优先级和结合性,能够正确编写表达式。
例如,表达式 a = 5 + 3 2 的计算结果是 11,因为乘法运算符的优先级高于加法运算符。
4、控制结构(1)顺序结构:程序按照语句的先后顺序依次执行。
(2)选择结构:包括 ifelse 语句和 switch 语句,用于根据不同的条件执行不同的代码块。
(3)循环结构:有 for 循环、while 循环和 dowhile 循环,用于重复执行一段代码。
二、数组和指针1、数组数组是一组相同类型的变量的集合,可以通过下标来访问数组中的元素。
例如,定义一个整型数组 int arr5 ={1, 2, 3, 4, 5},可以通过 arr0来访问第一个元素 1。
2、指针指针是 C 语言中非常重要的概念,它是一个变量,用于存储另一个变量的地址。
通过指针可以间接访问变量的值,并且能够实现动态内存分配。
例如,int p; 定义了一个指向整型的指针 p,通过 p =&a; 可以将指针 p 指向变量 a 的地址,然后通过 p 来访问变量 a 的值。
三、函数1、函数的定义和调用函数是一段独立的代码块,用于完成特定的任务。
函数可以有返回值,也可以没有返回值。
7、编写一个程序,将用户输入的十进制整数转换成
十六进制数。
8、编写程序,把一个65---91之间的数据看成是字
符的ASCII码,输出对应的字符。
(用Do循环语句编写,且字符之间用空格分开)
9、输入一个英文句子,它仅包含单词与空格,试把其中的每一个单词的第一个字母设置为大写,其余字母设置为小写,输出结果。
(用数组编程)
10、
11、
12、
13、
14、
15、
16、
17
18、
19、
20、
21、
第二部分参考答案
参考资料:[1]程朔鹰等人民邮电出版社《C语言程序设计习题集》
[1]程朔鹰等人民邮电出版社《C语言程序设计习题集》
[1]程朔鹰等人民邮电出版社《C语言程序设计习题集》
[1]程朔鹰等人民邮电出版社《C语言程序设计习题集》
[1]程朔鹰等人民邮电出版社《C语言程序设计习题集》。
(完整版)C语言程序设计+复习题库一、填空1.break语句通常用于switch // 循环中。
2. C 语言对数组下标的引用一般从0 开始。
3. C 语言中,一个函数一般由两个部分组成,它们是函数首部和函数体。
4.C标准库函数中,字符串的处理函数包含在string.h 头文件中,数学函数包含在math.h头文件中。
5.C程序的运行需要经过编译和链接两步进行。
6.C程序中用/**/ 括起来的内容是程序的注释语句。
7.C语言函数是由函数首部和函数体两部分组成。
其中,函数首部包括函数类型、函数名和函数参数。
8.C语言提供的三种逻辑运算符是&,//,!。
9.C语言源程序经过编译后,生成文件的后缀名是 .c 。
10.C语言源程序经过连接后,生成文件的后缀名是 .exe 。
11.C语言中,关系表达式和逻辑表达式的值是1//0 。
12.C语言中的标识符只能由三种字符组成,他们是字母,数字,下划线。
13.C语言中的每条基本语句以;作为结束符,每条复合语句以}作为结束符。
14.C语言中函数返回值的类型是由函数类型决定的。
15.C源程序的基本单位是函数。
16.int a = 2, b = 3; 表达式a > b ? a ++ : ++ b的值为 4 。
17.int x=1,y=1,z=1; x+=y+=z; 则表达式x18.当a=3,b=2,c=1时,表达式f=a>b>c的值是0 。
19.定义一个指针p,它指向一个有6个整型元素的一维数组,定义语句为int *p=a[6] ; 。
20.定义一个指针数组p,它有4个元素,每个指针指向一个整型数据,定义语句为int*p[4]; 。
21.赋值语句是由= 加上一个分号构成。
22.构成数组的各个元素必须具有相同的类型。
23.关系表达式x+y>5的相反表达式为x+y!>5 。
24.函数strlen("1234\0xy")的值为:9 。
C语言复习提纲:第一章 C语言程序设计概述一、Visual C++6.0开发环境1、了解Visual C++6.0的安装过程;2、了解Visual C++6.0的工作界面,菜单和工具栏的使用;▲二、掌握C语言程序运行的过程1、编辑:是指把按照C语法规则编写的程序代码通过编辑器(Visual C++ 6.0,Turbo C 3.0)输入计算机,并存盘。
在存盘时,C源文件的扩展名为 .c2、编译:将C语言源程序编译成目标程序,即对源程序进行编译,并将源程序转换为扩展名为.obj的二进制目标代码(即把已经编辑好的源程序翻译成二进制目标代码的过程)。
3、连接:将用户程序生成的目标代码文件(.obj)和系统提供的库文件(.lib)中的某些代码连接在一起,生成一个可执行文件(.exe)。
4、执行:执行生成的可执行代码,并输出结果。
5、调试:是将编制的程序投入实际运行前,用手工或编译程序等方法进行测试,修正语法错误和逻辑错误的过程。
▲三、结构化程序设计的基本概念1、概念以模块化设计为中心,将待开发的软件系统划分为若干个相互独立的模块,将原来较为复杂的问题化简为一系列简单模块的设计,任何模块都可以使用一些基本的结构来实现,任何复杂的程序,都可以使用这些基本结构按一定的顺序组合起来,这些基本结构的特点都是只有一个入口、一个出口,这样的程序设计方法称为结构化程序设计。
2、基本思想结构化程序设计的基本思想是采用"自顶向下,逐步细化、模块化设计、结构化编码"的程序设计方法和"单入口单出口"的控制结构。
3、三种基本结构⑴顺序结构⑵选择结构⑶循环结构4、三种基本结构的特点⑴只有一个入口⑵只有一个出口⑶每一个基本结构中的每一部分都有机会执行到⑷结构内不存在“死循环”5、设计原则⑴自顶向下⑶逐步细化⑶模块化设计⑷结构化编码▲四、C程序的基本组成:C程序是由若干个函数构成的,至少有一个主函数main(),main()的位置可以任意,其他各函数在程序中的前后位置也是可以任意的。
c语言程序与设计基础知识试题及答案一、单项选择题(每题2分,共20分)1. C语言中,用于定义结构体的关键字是:A. structB. unionC. enumD. typedef答案:A2. 下列哪个选项是C语言中的合法整型常量?A. 0x12B. 0123C. 0.12ED. 12e答案:A3. 在C语言中,用于定义数组的关键字是:A. arrayB. listC. vectorD. none of the above答案:D4. 下列哪个函数用于将字符串转换为浮点数?A. atoiB. atofC. itoaD. sprintf答案:B5. C语言中,用于文件操作的库函数是:A. stdio.hB. string.hC. math.hD. stdlib.h答案:A6. 下列关于指针的描述,错误的是:A. 指针可以存储变量的地址B. 指针可以存储一个值C. 指针可以作为函数的参数D. 指针可以作为函数的返回值答案:B7. 在C语言中,用于定义函数的关键字是:A. functionB. defineC. defD. void答案:D8. 下列哪个选项不是C语言中的控制结构?A. if-elseB. switch-caseC. forD. goto答案:D9. 下列哪个选项是C语言中的合法变量名?A. 2variableB. variable2C. variable_2D. all of the above答案:D10. C语言中,用于定义枚举类型的关键字是:A. enumB. typedefC. structD. union答案:A二、填空题(每题2分,共10分)1. C语言中,用于定义一个名为“person”的结构体,包含姓名和年龄两个成员,正确的定义方式是:struct person { char name[50];int age; }。
答案:正确2. 在C语言中,使用________函数可以输出格式化的字符串到控制台。
C程序设计复习要点第一章概述1.C程序的构成与结构特点2.C程序上机调试过程与流程第二章数据类型、运算量与表达式1.数据类型的种类(基本数据类型和构造数据类型)2.常量的数据类型及其表示(表示方法、存储字节数与表数范围)——整、实、字符、字符串和转义字符3.变量的命名、定义方法与赋初值4.各种表达式及其运算规则——优先级、结合性、类型自动转换与强制转换●算术运算符、表达式及其构造(注意“/”和“%”特殊性)●自增、自减运算符及其简单表达式运算●赋值运算符及其表达式(注意复合赋值运算符的运算方法)●逗号运算符及其表达式第三章流程控制1.赋值语句的一般形式、赋值过程及赋值规则(注意左右数据类型的一致或兼容)2.输入和输出函数的格式、功能及用法(只要求常用的格式控制符d, f, c, s),提醒注意:●格式输出中域宽和小数位数的控制●格式输入与输出中普通字符的原样输入和输出问题●熟悉并区别以下函数:putchar()、printf()、puts();getchar()、scanf()、gets()3.关系运算符及其表达式、逻辑运算符及其表达式和条件运算符及其表达式的运算规则(优先级、结合性)4.关系表达式与逻辑表达式的构造(根据已知条件写表达式)5.if语句的三种形式:if …语句、if …else …语句、if 语句的嵌套●if 语句的格式与用法:简单if、嵌套if、并列if●逻辑关系与执行过程●嵌套规则(重点掌握if …else …if …else …if …else)6.switch语句的格式与用法7.*熟练使用if和switch语句阅读和编写较为简单的选择结构程序8.三种循环语句:while() …、do …while()、for()的格式、执行过程及其用法●循环变量初始化、循环条件构造、循环体所要实现的任务和控制变量修改注意循环期间与结束时循环控制变量的取值问题9.结合例题理解和区别break与continue语句的作用及其用法10.本章涉及的主要算法:累加(计数)、累乘、递推、穷举、判素数、求最大公约与最小公倍等11.*熟练使用三种循环语句并结合以上算法阅读和编写较为简单的循环结构及其嵌套程序第四章复杂数据类型1.一维、二维数组的定义、初始化及其引用方法(数据输入、输出、存储与处理)2.字符数组的定义、初始化及其引用(字符串输入、输出、存储与处理)3.常用字符串处理函数:gets()、puts()、strlen()、strcmp()、strcpy()4.数组涉及的主要算法:排序、极值、逆序、回文和字符串的连接、复制、求长度等5.*熟练使用数组并结合以上算法阅读和编写较为简单的程序6.指针的概念:指针、指针变量、指针运算(*、&、++、--、+、-)7.变量、数组和字符串指针的定义、指向与引用(仅限于一维数组)8.了解指针数组与二级指针的概念和定义9.*能够阅读并理解使用指针进行数据处理的相关程序(极值、逆序、回文和字符串的连接、复制、求长度等)10.结构体与共用体的概念、定义与引用(仅限概念)第五章结构化程序设计与应用1.熟悉程序的三种基本结构:顺序、选择和循环2.*通过其中部分例题掌握选择、循环语句的使用以及循环和数组涉及的主要算法第六章函数与编译预处理1.掌握函数的定义、声明和调用方法及参数传递方式2.*结合相关例题掌握一般函数和递归函数的定义与使用3.熟悉局部变量与全局变量的定义及作用范围,了解各种静态与动态变量的定义、作用范围与生存期4.了解内部函数与外部函数的定义及调用规则5.掌握宏定义与宏展开(重点掌握带参数宏的定义与展开)6.了解文件包含的作用及其使用场合第七章文件1.了解文件的概念2.熟悉文件打开、关闭及各种与文件读写有关函数的格式与用法特别提醒:以上带*部分主要涉及程序阅读、程序填空和编写程序,其余部分主要以选择和概念填空题出现3ae bc C语言程序设计参考题型说明:★本题仅反映考试的题型,作为考前复习参考。
c语言程序设计(复习资料)总共50题共100分一、单选题(共20题,共40分)1. 假定一个二维数组的定义语句为“int a[3][4]={{3,4,{2,8,6;”,则元素a[2][1]的值为()。
(2分)A.0B.4C.6D.8★标准答案:A2. 以下说法中正确的是()。
(2分)A.C++程序总是从第一个定义的函数开始执行B.C++程序总是从main函数开始执行C.C++函数必须有返回值,否则不能使用函数D.C++程序中有调用关系的所有函数必须放在同一个程序文件中★标准答案:B3. 在下面循环语句中循环体执行的次数为()。
int i=0,s=0; while(s<20) {i++; s+=i; (2分)A.4B.5C.6D.7★标准答案:C4. 虚函数的定义是在基类中进行的,定义时需要冠以关键字(2分)A.staticB.frendC.virtualD.public★标准答案:C5. 为了提高程序的运行速度,可将不太复杂的功能用函数实现,此函数应选择()。
(2分)A.内联函数B.重载函数C.递归函数D.函数模板★标准答案:A6. 设x和y均为bool量,则x || y为假的条件是( )。
(2分)A.它们均为真B.其中一个为真C.它们均为假D.其中一个为假★标准答案:C7. 若数组名作实参而指针变量作形参,函数调用时实参传给形参的是(2分)A.数组的长度B.数组第一个元素的值C.数组所有元素的值D.数组第一个元素的地址★标准答案:D8. 字符串”a+b=12\n”的长度为()。
(2分)A.6B.7C.8D.9★标准答案:C9. 程序中主函数的名字为()。
(2分)A.mainB.MAINC.MainD.任意标识符★标准答案:A10. 假定下列x和y均为int型变量,则不正确的赋值为()。
(2分)A.x+=y++B.x++=y++C.x=++yD.++x=++y★标准答案:B11. do语句能够改写为()语句。
C语言考试期末考试复习题及答案一、选择题(2) 设int x=3,y=4,z=5,则下列表达式中的值为0的是 ( D )A) ‘x’&&’y’B) x||y+z&&y-z C) x<=yD) !((x<y)&&!z||1)(3) 执行以下程序段后,i的值是 ( C )int i=10;switch(i+1){ case 10: i++; break;case 11: ++i;case 12: ++i; break;default : i=i+1;}A) 11 B) 13 C) 12 D) 14(4) 语句while(!e);中的条件!e等价于 ( A )A) e==0 B)e!=1 C) e!=0 D) 运行时出错(5) 用 int a[4]={1,2}; 对数组进行初始化后,数组元素a[3]的值是 ( B )A) 随机值B) 0 C) 1 D) F(6) 在执行char str[10]=“china\0”; strlen(str)的结果是 ( A )A)5 B) 6 D) 7 D 9(7) 若有定义,char *p=”computer”; 则语句printf(“%c”,*(p+2))运行结果是 ( B )A) 随机值B) m C)o D) omputer(8) 在以下函数调用语句中fun1(x,10,(x,10),fun2(y,10,(y,10)));函数fun1参数的个数为 ( B )A) 8 B) 4C) 5 D) 编译出错(9) 在说明一个结构体变量时系统分配给它的存储空间是( D )A)该结构体中第一个成员变量所需存储空间 B) 该结构体中最后一个成员变量所需存储空间C)该结构体中占用最大存储空间的成员变量所需存储空间D) 该结构体中所有成员变量所需存储空间的总和3. 以下定义语句中正确的是( C )A)char a='A'b='B'; float a=b=10.0;C)int a=10,*b=&a; D)float *a,b=&a;4.下列选项中,不能用作标识符的是( D )A)_1234_ B)_1_2 C) int_2_ D)2_int_5.在函数调用过程中,如果函数funA调用了函数 funB,函数funB又调用了函数funA,则( B )A)称为函数的直接递归调用 B)称为函数的间接递归调用C)称为函数的循环调用 D)C语言中不允许这样的递归调用6.以下叙述中正确的是 ( A )A)局部变量说明为static存储类,其生存期将得到延长B)全局变量说明为static存储类,其作用域将被扩大C)任何存储类的变量在未赋初值时,其值都是不确定的D)形参可以使用的存储类说明符与局部变量完全相同7.若变量已正确定义,要求程序段完成求5!的计算,不能完成此操作的程序段是( B)A)for(i=1,p=1;i<=5;i++) p*=i;B)for(i=1;i<=5;i++){ p=1; p*=i;}C)i=1;p=1;while(i<=5){p*=i; i++;}D)i=1;p=1;do{p*=i; i++; }while(i<=5);8.有以下程序(a)main(){ char a='a',b;printf("%c,",++a);printf("%c\n",b=a++);}程序运行后的输出结果是a)b,b B)b,c C)a,b D)a,c9.有以下函数定义:(c)void fun(int n, double x) { …… }若以下选项中的变量都已正确定义并赋值,则对函数fun的正确调用语句是A) fun(int y,double m); B)k=fun(10,12.5) C)fun(x,n); D)void fun(n,x)10.已定义c为字符型变量,则下列语句中正确的是(c)A)c='97'; B)c="97"; C)c=97; D)c="a";11.以下能正确定义一维数组的选项是(b)A)int num[]; B) #define N 100 C)int num[0..100]; D) int N=100;int num[N]; int num[N];12.以下能正确定义数组并正确赋初值的语句是(d)A)int N=5,b[N][N]; B)int a[1][2]={{1},{3}};C)int c[2][]= {{1,2},{3,4}}; D)int d[3][2]={{1,2},{34}};13.有以下程序(a)main(){ int i;for (i=0; i<3; i++)switch (i){ case 1: printf("%d ", i);case 2: printf("%d ", i);default : printf("%d ", i); }}执行后输出结果是A)011122 B)012 C)012020 D)12014.有以下程序(d)main(){ int p[7]={11,13,14,15,16,17,18}, i=0,k=0;while(i<7 && p[i]%2) { k =k+ p[i]; i++; }printf("%d\n", k);}执行后输出结果是A)58 B)56 C)45 D)2415.以下叙述中正确的是(c)A)C语言比其他语言高级 B)C语言可以不用编译就能被计算机识别执行C)C语言以接近英语国家的自然语言和数学语言作为语言的表达形式D)C语言出现的最晚,具有其他语言的一切优点16.下列叙述中正确的是(d)A)C语言中既有逻辑类型也有集合类型B)C语言中没有逻辑类型但有集合类型C)C语言中有逻辑类型但没有集合类型D)C语言中既没有逻辑类型也没有集合类型17.以下叙述中正确的是(a)A)C程序中注释部分可以出现在程序中任意合适的地方B)花括号"{"和"}"只能作为函数体的定界符C)构成C程序的基本单位是函数,所有函数名都可以由用户命名D)分号是C语句之间的分隔符,不是语句的一部分二)阅读程序,写出程序运行结果(1) #include<stdio.h>main(){ char ch=’A’;ch=(ch>=’A’&& ch<=’Z’)?(ch+32):ch;printf(“%c”,ch);}程序的运行结果是:(2) #include<stdio.h>main( ){ int sum=0,i=11;while (i<=10){sum=sum+i;i++;}printf(“%d”,sum);}程序的运行结果是:(3) #include<stdio.h>main(){ char str[ ]=”1a2b3c”;int i;for(i=0;str[i]!=’\0’;i++)if (str[i]>=’0’ && str[i]<=’9’) printf(“%c”,str[i]);}程序的运行结果是:(4) main(){ int a,b;a=5;b=8;p(a+b,a);}p(int x,int y){y=x+y;printf(“%d %d”,x,y);}程序的运行结果是:(5) #include<stdio.h>void main(){ int a[3][3]={{1,2,3},{4,5,6},{7,8,9}};int j,s=1;for(j=0;j<=2;j++)s=s*a[j][j];printf("%d",s);}程序的运行结果是:Key: (1) a (2) 0 (3) 123 (4) 5 13 13 18 (5) 45 三)改错题(每个程序只有一个错误,填入错误语句所在的行号以及修改后的语句)(1)下段程序的功能是先输入一个整数,然后将输入的整数输出。
本科《C++语言程序设计》期末复习模拟训练题一、单选题1.在每个C++程序中都必须包含有这样一个函数,该函数的函数名为(A)。
A. mainB. MAINC. nameD. function 2.设x和y均为bool量,则x && y为真的条件是(D)。
A. 其中一个为假B. 其中一个为真C. 它们均为假D. 它们均为真3. 逻辑表达式x>0 || y==5的相反表达式为(B)。
A. x<=0 || y!=5B. x<=0 && y!=5C. x>0 || y!=5D. x>0 && y==54. 假定p是一个指向float型数据的指针,则p+1所指数据的地址比p所指数据的地址大(C)个字节。
A. 1B. 2C. 4D. 85. 枚举类型中的每个枚举常量的值都是一个(A)。
A. 整数B. 浮点数C. 字符D. 逻辑值6. 循环体至少被执行一次的语句为(C)语句。
A. for循环B. while循环C. do循环D. 任一种循环7. 在下面的字符数组定义中,(D)语句有语法错误。
A. char a[20]=”abcdefg”;B. char a[]=”x+y=55.”;C. char a[15]={’1’,’2’};D. char a[10]=’5’;8. 若用数组名作为函数调用的实参,传递给形参的是(A)。
A. 数组的首地址B. 数组中第一个元素的值C. 数组全部元素的值D. 数组元素的个数9.假定AB为一个类,则执行“AB a(4), b[5], *p[2];”语句时,自动调用该类构造函数的次数为(A)。
A. 6B. 7C. 9D. 1110.当使用fstream流类定义一个流对象并打开一个磁盘文件时,文件的隐含打开方式为(D)。
A. ios::inB. ios::outC. ios::in | ios::outD. 没有11. 枚举类型中的每个枚举常量的值都是一个(A)值。
A. 整数B. 浮点数C. 字符D. 逻辑12.设x和y均为bool量,则逻辑表达式x || y为假的条件是(C)。
A. 它们均为真B. 其中一个为真C. 它们均为假D. 其中一个为假13. 声明或定义一个内联函数时,必须在函数开始使用保留字(D)。
A. staticB. constC. externD. inline14. 在下面的函数声明中,存在着语法错误的是(D)。
A. BC(int a, int);B. BC(int, int);C. BC(int, int=5);D. BC(int x; int y);15. 假定a为一个整型数组名,则元素a[4]与(C)的表示等价。
A. a+4B. *a+4C. *(a+4)D. *(a+16)16. 下面循环语句执行结束后输出的i值为(B)的值。
for(int i=0; i<n; i++) if(i>n/2) {cout<<i<<endl; break;}A. n/2B. n/2+1C. n-1D. n17. 将两个字符串连接起来组成一个字符串时,选用(C)函数。
A. strlen()B. strcpy()C. strcat()D. strcmp()18. 预处理命令在程序中都是以(B)字符开头的。
A. *B. #C. &D. @19. 假定有定义“struct BOOK{char title[40]; float price;};”,则不正确的变量定义语句为(D)。
A. BOOK x;B. BOOK x={"C++ Programming",27.0};C. BOOK *x=new BOOK;D. BOOK x=new BOOK;20. 假定AB为一个类,px为指向该类动态对象数组的指针,该数组长度为n,则执行“delete []px;”语句时,自动调用该类析构函数的次数为(B)。
A. 1B. nC. n-1D. n+121. 由C++源程序文件编译而成的目标文件的缺省扩展名为(A)。
A. objB. likC. exeD. cpp22. 程序运行中需要从键盘上输入多于一个数据时,各数据之间应使用(D)符号作为分隔符。
A. 空格或逗号B. 逗号或回车C. 逗号或分号D. 空格或回车23. 设x是一个bool型的逻辑量,y的值为10,则表达式 x && y 的值为(C)。
A. 1B. 0C. 与x值相同D. 与x值相反24. for语句能够被改写为(D)语句。
A. 复合B. ifC. switchD. while25. 在下面的do循环语句中,其循环体被执行的次数为(A)。
int i=0; do i++; while(i*i<10);A. 4B. 3C. 5D. 226. 在下面的一维数组定义中,(C)语句有语法错误。
A. int a[]={1,2,3};B. int a[10]={0};C. int a[];D. int a[5];27. 下面的(C)保留字不能作为函数的返回类型。
A. voidB. intC. newD. long28. 下面的函数声明中,(B)是“void BC(int a, int b);”的重载函数。
A. int BC(int x, int y);B. void BC(int a, char b);C. float BC(int a, int b, int c=0);D. int BC(int a, int b=0);29. 当类中一个字符指针成员指向具有n个字节的存储空间时,它所能存储字符串的最大长度为(C)。
A. nB. n+1C. n-1D. n-230. 假定AB为一个类,则该类的拷贝构造函数的声明语句为(D)。
A. AB&(AB x);B. AB(AB x);C. AB(AB* x);D. AB(AB&);31. C++程序的基本功能模块为(D)。
A. 表达式B. 标识符C. 语句D. 函数32. 存储以下数据,占用存储字节最多的是(A)。
A. 0B. ’0’C. ”0”D. ’\n’33. 在下面的一维数组定义中,有语法错误的是(C)。
A. int a[]={1,2,3};B. int a[10]={0};C. int a[];D. int a[5];34. 在下面的语句或语句组中,(B)不正确。
A. int a[5];B. int M=10; int a[M];C. int a[]={1,5,10,45};D. const int N=12; int a[N]; 35.C++语言中的每条简单语句以(B)作为结束符。
A. 逗号B. 分号C. 空格D. 换行符36. 含随机函数的表达式rand()%20的值在(C)区间内。
A. 1~19B. 1~20C. 0~19D. 0~2037. 当处理一个特定的问题时,若循环次数已知,则通常采用(A)来解决。
A. for循环B. while循环C. do循环D. switch语句38. 在下面循环语句中内层循环体S语句的执行总次数为(D)。
for(int i=0; i<n; i++)for(int j=i; j<n; j++) S;A. n2B.(n+1)/2C. n(n-1)/2D. n(n+1)/239. 若函数声明为double* function(), 则该函数的返回值为(B)。
A. 实数型B. 实数指针型C. 函数指针型D. 数组型40. 假定变量m定义为“int m=7;”,则定义变量p的正确语句为(B)。
A. int p=&m;B. int *p=&m;C. int &p=*m;D. int *p=m;二、填空题1.C++语言中的每条基本语句以 ; 作为结束符,每条复合语句以 } 作为结束符。
2.用于输出表达式值的标准输出流对象是cout ,用于从键盘上为变量输入值的标准入流对象是 cin 。
3.当不需要函数返回任何值时,则应把该函数类型定义为 void 。
4.执行“cout<<143<<’+’<<18<<’=’<<143+18<<endl;”语句后得到的输出结果为 143+18=161 。
5.执行“cout<<“ning”<<“chen”<<38<<endl;”语句后得到的输出结果为ningchen 38。
6.在每个C++程序中都必须包含有这样一个函数,该函数的函数名为 main 。
7.C++源程序文件的缺省扩展名为 .cpp ,由C++源程序文件编译而成的目标文件的缺省扩展名为 .obj ,由C++目标文件连接而成的可执行文件的缺省扩展名为 .exe 。
8.程序运行中需要从键盘上输入多于一个数据时,各数据之间应使用空格或 , 符号作为分隔符。
9.十进制数25表示成符号C++语言规则的八进制和十六进制数分别为031和0x19符号。
10.在C++语言中,用转义字符序列’\n’ 或’\12’ 或’\x0a’ 或操纵符endl 表示输出一个换行符。
11.执行“cout<<char(’b’+2)<<endl;”语句后得到的输出结果为 d 。
12.执行“cout<<char(’K’-3)<<endl;”语句后得到的输出结果为 H 。
13.已知’A’~’Z’的ASCII码为65~90,当执行“int x=’H’+5;”语句后x的值为 77 。
14.已知’A’~’Z’的ASCII码为65~90,当执行“char ch=16*5+2;cout<<ch<<endl;语句序列后,得到的输出结果为 R 。
15.假定一个枚举类型的定义为“enum RA{xa,xb,xc,xd};”,则执行“cout<<”xc=”<<xc<<endl;”语句得到的输出结果为 xc=2 。
16.假定一个枚举类型的定义为“enum RB{ab,ac=3,ad,ae}x=ad;”则x的值为 4 。
17.Char、short和int类型的大小分别为 1B 、2B 和 4B 。
18.float和double类型的大小分别为 4B 和 8B 。
19.十进制数128和-3.26的类型分别为 int 和 double 。
20.若需要定义一个标识符常量,并且使C++能够进行类型检查,则应在定义语句的开始用保留字 const 。
21.使用const语句定义一个标识符常量时,则必须对它同时进行初始化。