第1章  C++及其开发环境概述
一、问答题
1.结构化程序设计主要有哪些劣势?
【答案】
1)程序的开发效率低下
2)程序的可重用性差
3)程序的维护成本高
c语言游戏编程题经典100例(4)无法适应信息的快速膨胀和多样化
2.面向对象的程序设计有哪些优点?
【答案】
1)程序的开发效率高
2)程序代码的可重用性高
3)程序易于维护
3.C++的发展经历了哪些阶段?
【答案】
C++语言起源于C语言。1980年初期,美国贝尔实验室的Bjarne Stroustrup博士及其同事在C语言的基础上,从Simula67中引入面向对象的特征,开发出一种过程性与对象性相结合的程序设计语言,最初称为“带类的C”,1983年正式取名为C++
后来,Stroustrup和他的同事陆续将运算符重载、继承、虚函数等特性引入C++1989年后推出AT&T C++ 2.0版,并经过多次改进和完善,发展成为现在的C++
4.C++主要有哪些特点?
【答案】
1C++可以被看成C语言的一个超集,是对C的增强和扩展。因此,许多C代码可以不经修改即可为C++所用。自然,也可以利用C++开发环境来开发C程序。
2C++几乎支持所有面向对象的程序设计特征,因此,利用C++不仅可以进行传统的结构化程序设计,而且可以较好地进行面向对象的程序开发。
3C++很好地保持了C的简洁、高效、灵活和接近汇编语言的特点,因此,C++程序的执行效率也很高。
5.一个C++程序一般由哪几部分构成?
【答案】
预处理命令。C++提供了三种预处理命令,即宏定义命令、文件包含命令和条件编译命令。
全局声明部分。此部分内容通常会给出用户自定义的数据类型声明,以及程序中所涉及变量的定义,例如类的声明。
函数。一个程序中可包含一个或多个函数,它们是执行用户指定操作的主要部分。
6.使用Visual C++ 开发C++程序时一般要经过哪几个步骤?每个步骤的作用是什么?相应地产生哪些文件?
【答案】
1)编写程序
C++是一种高级语言,所以用其编写的程序称为“源程序”,以.cpp做为后缀。我们可以利用Visual C++Turbo C++等编译软件来编写C++源程序。
2)编译程序
计算机不能识别高级语言,为了将源程序翻译成计算机可识别的二进制指令,需将源程序进行编译,编译之后的文件称作“目标文件”,以.obj作为后缀。编译时以每个源程序单元为单位,每一个源程序文件编译成一个目标文件。因此,如果一个工程中有多个源程序单元,系统会分别将其编译成多个目标文件。
另外,编译时系统会自动进行错误检查,一旦检查出有错误,便不会生成目标文件,需改正后重新编译。
3)连接目标文件
一个程序中可能会包含很多文件,编译后会生成很多独立的目标文件,此时系统的“连接程序”将这些目标文件和库文件以及系统提供的其他信息连接起来,形成二进制可执行文件,以.exe为后缀。
4)运行程序
运行二进制可执行文件,得到运行结果。如运行结果不正确,则需修改源文件,之后重新编译运行。
二、分析运行结果
1.
#include <iostream>
using namespace std;
int main( )
{
cout<<"My "<<"sister ";
cout<<"is "<<"a ";
cout<<"beautiful girl!"<<endl;
return 0 ;
}
运行结果为:
My sister is a beautiful girl!
2.
#include <iostream>
using namespace std;
int main( )
{
int a,b,c;
cin>>a>>b;
c=a+b;
cout<<"a+b="<<a+b<<endl;
return 0;
}
运行结果为:
2 3
a+b=5
第2章  C++程序设计基础(上)
一、选择题
(1)在一个C++程序中,main函数的位置(    )。
A.必须在程序的开头          B.必须在程序的后面
C.可以在程序的任何地方      D.必须在其他函数中间
【答案】C
(2)用C++语言编写的源程序要变为目标程序必须要经过(    )。
A.解释        B.汇编        C.编辑      D.编译
【答案】D
(3)C++程序基本单位是(    )。
A.数据      B.字符      C.函数      D.语句
【答案】C
(4)C++程序中的语句必须以(    )结束。
A.冒号    B.分号      C.空格        D.花括号
【答案】B
(5)下列选项中,全部都是C++关键字的选项为(    )。
A.while  IF  static            B.break  char  go 
C.sizeof  case  extern          D.switch  float  integer
【答案】C
(6)下列正确的八进制整型常量表示是(    )。
A.0a0      B.015      C.080        D. 0x10
【答案】B
(7)在下列运算符中,(    )优先级最高。
A.<=        B.*=      C.+        D.*
【答案】D
(8)在下列运算符中,(    )优先级最低。
A.!          B.&&        C.!=      D.?:
【答案】D
(9)设i=1,j=2,则表达式i+++j的值为(    )。
A.1        B.2        C.3          D.4
【答案】C
(10)设i=1,j=2,则表达式++i+j的值为(    )。
A.1        B.2        C.3        D.4
【答案】D
(11)在下列表达式选项中,(    )是正确。
A.++(a++)    B.a++b        C.a+++b      D.a++++b
【答案】C
(12)已知i=0,j=1,k=2,则逻辑表达式++i||--j&&++k的值为(    )。
A.0        B.1          C.2          D.3
【答案】B
(13)执行下列语句后,x的值是(    ),y的值是(    )。
int x,y;
x=y=1;++x||++y;
A.不确定    B.1,1        C.2,1          D.2,2
【答案】C
(14)已知x=5,则执行语句x+=x-=x*x;后,x的值为(    )。
A.25        B.40        C.-40        D.20
【答案】C
(15)设a=1,b=2,c=3,d=4,则条件表达式a<b?a:c<d?c:d的值为(    )。
A1        B2        C3        D4
【答案】A
(16)逗号表达式(x=4*5,x*5),x+25的值为(    )。
A.25        B.20        C.100        D.45
【答案】C
二、写出下列数学表达式的C++算术表达式
(1)                    (2)x{x[x(ax+b)+c]+d}+e
(3)                  (4)
(5)                      (6)log10(a2+ab+b2)
【答案】
11/(1+1/(1+1/(x+y)))
2x*(x*(x*(a*x+b)+c)+d)+e
3log(1+pow(fabs((a+b)/(a–b)),10)
4sqrt(1+3.14159/2*cos(48*3.14159/180))
51/tan((1-x*x)/(1+x*x))
或者cos((1-x*x)/(1+x*x))/sin((1-x*x)/(1+x*x))
6log10(a*a+a*b+b*b)
三、用关系表达式或逻辑表达式表示下列条件
(1)i整除j                        (2)n是小于正整数k的偶数
(3)1<=x<10                    (4)x,y其中有一个小于z
(5)y [–100,–10],并且y [10,100]
(6)坐标点(x,y)落在以(10,20)为圆心,以35为半径的圆内
(7)三条边a,b和c构成三角形
(8)年份Year能被4整除,但不能被100整除或者能被400整除
【答案】
1i%j==0                        2(n<k)&&(n%2==0)
31<=x&&x<10              4x<z||y<z

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。