福建工程学院C++期末复习总结

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

第二章
2-1 C++语言有哪些优点和缺点?
答:C+ +语言的主要特点表现在两个方面,一是全面兼容C,二是支持面向对象的方法。

C+十是一个
更好的c,它保持了c的简洁、高效、接近汇编语言、具有良好的可读性和可移植性等特点,对的类型系统进行了改革和扩充,因此C++比c更安全,C++的编译系统能检查岀更多的类型错误。

C++语言最重要的特点是支持面向对象的方法。

2-2下列标识符哪些是合法的?
Programe, -page, _lock, test2, 3inl, @mail ,A_B_C_D
答:Programe, _lock, test2, A_B_C_D 是合法的标识符。

2-3例2-1中每条语句的作用是什么?
答:#include<iostream> //指示编译器将文件iostream.h中的代码
〃嵌入到本程序中该指令所在的地方
void mian(viod) //主函数名,void表示函数没有返回值
{
cout<< ”Hello!\n ”; //输出字符串Hello!到标准输出设备(显示器)上cout<< "Welcome
to C++!\n ”;〃输出字符串Welcome to C++!
}
2-4请用C++语句声明一个常量PI,值为3.1416;再声明一个浮点型变量a,把PI的值赋给
答:con st定义的常量是有类型的,所以在使用它们时编译器可以检查类型错误;而且,这些常量在调试时是可见的。

2-5在下面的枚举类型中,BLUE的值是多少?
Enum Color{WHITE ,BLACK=100,RED,BLUE,GREEN=300};
答:BLUE=102
2-6注释有什么作用? ( C++中有哪几种注释的方法?它们之间有什么区别?)
答:注释在程序中的作用是对程序进行注解和说明,以便于阅读。

编译系统在对源程序进行编译时不理会注释部分,因此注释对于程序的功能实现不起任何作用。

而且由于编译
时忽略注释部分,所以注释内容不会增加最终产生的可执行程序的大小。

适当地使用注释,能够提高程序的可读性。

在C++中,有两种给出注释的方法:一种是沿用C语言的方法,使用“ /* ”和“*/ ”括起注释文字。

另一种方法是使用“//”,从“ //”开始,直到它所
在行的行尾,所有字符都被作为注释处理。

2-7什么叫做表达式?x=5+7是一个表达式吗?它的值是多少?
答:解:任何一个用于计算值的公式都可称为表达式。

x=5+7是一个表达式,它的值为12 2-8下列表达式的值是多少?
(1) 201/4 =50
(2) 201%4=1
(3) 201/4.0=50.25
2-9执行完下列语句后,a,b,c三个变量的值为多少?
a=30;
b=a++; c=++a;
答:a:32 b:30 c:32
2-10在一个for语句中,可以给多个变量赋初值吗?如何实现?
答:在循环设置条件的第一个“;”前用“,”分隔不同的赋值表达式。

例如:
2-11执行完下列语句后,n的值为多少?
int n;
for (n=0;n <100; n++);
答:n=100
2-12写一条for语句,计数条件为n从100到200,步长为2;然后用while和do…while 循环完成同样的循环。

答:for循环
for(n=100 ;*=200; n+=2;);
while循环
int n=100;
do{
n+=2;
}while( n<=200)
2-13 if(x=3)和if(x= =3)这两条语句的差别是什么?
答:语句if(x=3)把3赋给x,赋值表达式的值为true,作为if语句的条件;语句if(x= =3)) 首先判断x的值是否为3若相等,条件表达式的值为true,否则为faule.
2-14已知x, y两个变量,写一条简单的if语句,把较小的值付给而原本值较大的量。

if (x>y)
x=y;
else
y=x;
2-15修改下面这个程序中的错误,改正后它的运行结果是什么?
#in clude<iostream>
using n amespace std;
int mai n()
int i
int j;
i=10; /* 给i 赋值*/
j=20; /* 给j 赋值*/
cout<<" i+j= " <<i+j<<endl; /* 输出结果*/
return 0;
}
答: #include<iostream>
using n amespace std;
int mai n()
int i;
int j;
i=10; /*给i赋值
j=20; /* 给j 赋值*/
cout<<" i+j=<<i+j " ; /* 输出结果*/
return 0;
} 程序运行输出:i+j=30
2-16编写一个程序,运行时提示输入一个数字,再把这个数字显示出来。

#in clude<iostream>
using n amespace std;
int mai n()
{
int i;
cout<< "请输入一个数:”;
cin> >i;
cout<< "您输入的数是:"<<i<<e ndl;
return 0;
2-17 c++有那种数据类型?简述其值域。

编程显示你使用的计算机中的各种数据类型的字节数。

答: #include<iostream>
using n amespace std;
int mai n()
{
cout<< "the size of an int is:\t\t "<<size of(int)<< "bytes.\n”
cout<< "the size of an short int is:\t\t "<<size of(short int)<< "bytes.\n";
cout<< "the size of an long int is:\t\t ”<size of(long int)<< " bytes.'n";
cout<< "the size of a char is:\t\t "<<size of(char)<< "bytes.\n ”;
cout<< "the size of a float is:\t\t "<<size of(float)<< "bytes.\n";
cout<< "the size of a double is:\t\t "<<size of(double)<< "bytes.\n"; return 0;
}"
程序运行输出:
the size of an in t is:4 bytes
the size of an short int is:2 bytes
the size of an long int is:4 bytes
the size of a char is:1 bytes
the size of a double is:4 bytes
the size of a float is:8 bytes
2-18输出ASCII码为32~127的字符。

解: #include<iostream>
using n amespace std;
int mai n()
{
for(int i=32;i<128;i++)
cout<<(char )i;
return ;
}
2-19运行下面的程序,观察其输出,与你的设想是否相同?
#in clude<iostream>
using n amespace std;
int mai n()
{
un sig ned int x;
un sig ned int y=100;
un sig ned int z=50;
x=y-z;
cout<< "differenee is: "<<x<<endl;
x=z-y;
cout<< ”nNow differenee is: ”<x<<endl; return 0;
}
程序运行输出:
differe nee is:50
Now differe nee is:4294967246
2-20运行下面的程序,观察其输出,体会i++与++i的差别。

#in clude<iostream>
using n amespace std;
int mai n()
{
int myAge=39;
int yourAge=39;
cout<< "lam :”<myAge<< "years old."<<e ndl;
cout<< "You are : "yourage <<"years old. ”<endl; myAge++;
++yourAge;
cout<< "one year passes…."<<endl;
cout<<"I am : "<<myAge<< "years old.<<endl;
cout<< "You are : "<<yourAge<< "years old.<<endl; cout<< "Ano ther year passes." <<e
ndl;
cout<<"I am : "<<myAge++<< "years old.<<endl; cout<< "You are : "<<++yourAge<<
"years old.<<endl;
cout<<"Let's print it again . "<<endl;
cout<<"I am : "<<myAge<< "years old.<<endl;
cout<< "You are : "<<yourAge<< "years old.<<endl; return 0;
}
输出:
I am 39years old
You are 39years old
One year passes
I am 40years old
You are 40years old
Ano ther year passes
I am 40years old
You are 41 years old
Lets print it aga in
I am 41 years old
You are 41 years old
2-21什么叫变量?什么叫常量?
答:所谓常量是指在程序运行的整个过程中其值始终不可改变的量。

除了用文字表示常量外也可以为常量命名,这就是符号常量;在程序的执行过程中其值可以变化的量称为变量变量是需要用名字来标识的。

2-22变量有哪几种存储类型?
答:
变量有以下几种存储类型:
auto存储类型:采用堆栈方式分配内存空间,属于一时性存储,其存储空间可以被若干变量多次覆盖使用;
register存储类型:存放在通用寄存器中;extern存储类型:在所有函数和程序段中
都可引用;static存储类型:在内存中是以固定地址存放的,在整个程序运行期间都有
效。

2-23写出下列表达式的值:
(1) 2<3&&6<9 =true
(2) !(4<7)=false
(3) !(3<5)||(6<2)=true
2-24若a=1,b=2,c=3,下列各式的结果是什么?
(1) a|b-c=-1
(2) a A b &-c=1
⑶ a&b|c=3
(4) a|b&c=3
2-25若a=1,下列各式的结果是什么?
(1) !a|a=1
(2) a|a=-1
(3) aAa=0
⑷a>>2=0
2-26编写一个完整的的程序,实现功能:向用户提问“现在在下雨吗?”,提示用户输入Y或N。

若输入为Y,显示“现在正在下雨。

”;若输入为N,显示“现在没有下雨。

”;
否则继续提问“现在在下雨吗?”。

2-27编写一个完整的程序,运行时向用户提问“你考试考了多少分?( 0~100)”,接收输入后判断其等级显示出来。

规则如下:
优:90<=分数<=100
良:80<=分时<=90
中:60<=分数<=80 差:0<=分数<60
2-28实现一个简单的菜单程序,运行时显示Menu : A(dd) D(elete) S(ort)
Q(uit) , Selecto ne: ”提示用户输入。

A表示增加,D表示删除,S表示排序,Q表示退出。

输入为A,D,S时分别提示“数据已经增加,删除,排序。

”,输入为Q时程序结束。

(1) 要求使用if…else语句进行判断,用break, continue控制程序流程。

(2) 要求使用switch语句。

2-29用穷举法找出1~100间的质数并显示出来。

分别使用while , do…while , for 循环语句实现。

2-30比较break语句与continue语句的不同用法
答-break使程序从循环体和switch语句内跳出,继续执行逻辑上的下一条语句,
不能用在别处;continue语句结束本次循环,接着开始判断决定是否继续执行下一次循环。

2-31声明一个表示时间的结构体,可以精确表示年,月,日,小时,分,秒;提示用户输入年,月,日小时,分,秒的值,然后完整的显示出来。

2-32在程序中定义一个整形变量,赋予1~100的值。

要求用户猜这个数,比较两
个数的大小,把结果提示给用户,直到猜对为止。

分别使用while, do…while语句实现循环。

2-33声明枚举类型Weekday包括SUNDAY到SATURDAY七个元素在程序中声明Weekday类型的变量,对其赋值,声明整形变量,看看能否对其赋Weekday类型的值。

2-34 口袋中有红,黄,蓝,白,黑5种颜色的求若干个。

每次从口袋中取出三个
不同颜色的球,问有多少种取法?
2-35输出九九乘法表。

2-36有符号整数和无符号整数,在计算机内部是如何区分的?。

相关文档
最新文档