《c++语言程序设计教程》习题及解答(3)

2019-08-31 12:42

cout<

答: 543345

13.

#include void main() {

int b[]={5,?3,4,1,?8,9,0,10}; int i=0,j; for(j=i;i<8;i++) if(b[i]>b[j]) j=i;

cout<

14.

#include void main() {

int a[][3]={1,2,3,4,5,6,7,8,9}; int s1(0),s2(0); for(int i=0;i<3;i++) for(int j=0;j<3;j++) { if(i!=j) s1+=a[i][j]; if(i+j==1) s2+=a[i][j]; }

cout<<\ }

答: s1=30,s2=6

15.

#include void main() {

char s[]=\ for(int i=0;i<3;i++) {

for(int j=0;j

第 11 页 共 77 页

cout<

for(i=2;i>0;i??) {

for(int j=0;j

2.5 编程题

1.已知:int a=3,b=5;编程计算下列两个代数式的值,并比较它们是否相等。 (a+b)2 和

a2+2ab+b2 答: 编程如下:

#include

void main() { int a=3,b=5; int d1=(a+b)*(a+b); int d2=a*a+2*a*b+b*b; cout<<\

}

从结果中可以看出d1和d2值是相等的。

2.已知:int x=5;编程求下列代数式的值。

f(x)=3x3+2x2+5x+2

答:编程如下:

#include

void main() { int x=5; int f=3*x*x*x+2*x*x+5*x+2; cout<

}

3.从键盘上输入两个double型数,编程输出其中最小者。 答:编程如下:

#include

第 12 页 共 77 页

void main() { double a,b; cout<<\请输入两个double型数:\ cin>>a>>b; cout<<\输入的两个数中较小的是\ if(a<=b) cout<

}

4.华氏温度转换成摄氏温度的计算公式如下:

C=(F?32)*5/9

其中,C表示摄氏温度,F表示华氏温度。从键盘上输入一摄氏温度,编程输出对应的华氏温度。

答:编程如下:

#include

void main() { double c,f; cout<<\请输入一个摄氏温度值:\ cin>>c; f=9.0/5.0*c+32.0; cout<<\摄氏温度为\华氏温度为\

}

5. 从键盘上输入5个浮点数,输出它们的和以及平均值。 答:编程如下:

#include void main() { double a,b,c,d,e; cout<<\请输入5个double型数:\ cin>>a>>b>>c>>d>>e; double f=a+b+c+d+e; cout<<\输入的5个数的和是\平均值是\}

6. 将字符串\,逆向输出为\。 答:编程如下:

#include void main() { char a[]=\ cout<

2.6 简单回答下述问题

1. C++语言中注释符的格式如何?注释信息的功能是什么? 答:注释符格式有2种:

格式一: /* <注释信息> */

第 13 页 共 77 页

格式二: // <注释信息>

注释信息是用来对程序进行提示和说明的。

2. 使用const定义符号常量比使用#define定义符号常量有何优点?

答:使用const定义符号常量时要指出数据类型,而用#define定义符号常量时不需提出类

型,因此前者比后者对类型要求更严格,这样会更安全。 3. 内部静态存储类变量有何特点?

答:内部静态存储类变贯的特点是作用域较小,但寿命很长,这种变量作用域与寿命不一

致,因此会出现不可见但又存在的情况。

4. 在使用插入符(<<)输出若干个表达式值时,有的表达式中使用的运算符的优先级低

于插入符优先级时应该如何处理?

答:这时需将表达式用括号括起来,己改变其优先级。

5.由多种不同运算符组成的表达式,其类型如何确定?例如,

int a, b, c; …

a=b>c?b:c;

这是一个条件表达式还是赋值表达式?

答:表达式类型由优先级低的运算符组成的表达式来确定。

这是一个赋值表达式,因为赋值运算符优先级低于三目运算符。 6. 数组元素个数是由什么决定的?

答:数组元素个数是由维数及其大小来决定的。一维数组元素个数是该维的大小,二维数

组的元素个数是两维大小之积等。 7. 数组元素下标有何规定?

答:C++语言中,数组元素下标从0开始。 8. 初始值表中数据项的类型和个数有何规定?

答:初始值表中数据项的类型应与该变是类型相同,个数应小于或等于被初始化的数组元

素的个数。

9. 字符数组和字符串有什么关系?

答:字符数组中可存放字符串,而字符数组不都是存放字符串的。如果字符数组中有字符

串结束符,则说明该字符数存放的是字符串。

10.一个数组中的元素类型是否一定相同?何时定义的数组元素具有默认值? 答:数组中元素类型必须相同。存储类为外部和静态的数组其元素具有默认值。

第3章 语句和预处理

练习题3

3.1 判断题

√ 1.表达式和表达式语句是不同的。 × 2.空语句是一种没有用处的语句。 × 3.复合语句就是分程序。

× 4.条件语句中if子句和else子句都是必须有并且仅有一个。 √ 5.条件语句中else if子句可以没有,也可以有多个。 √ 6.开关语句可实现多路分支。

× 7.开关语句的<语句序列>中必须有一个break语句,否则该开关语句便无法退出。 × 8.任何循环语句都是至少执行一次循环体。

× 9.退出for循环语句必须是for后面括号内的中间一个表达式的值为0。

第 14 页 共 77 页

√ 10.do-while循环语句至少要执行一次循环体。

× 11.循环语句的循环体中可以出现if语句,if语句的if体内不能出现循环语句。 × 12.goto语句中所使用的语句标号是一种标识符,它的作用域是文件级的。

√ 13.break语句和continue语句都可以出现在循环体中,但是它们的作用是不同的。 × 14.文件包含命令所能包含的文件类型是不受限制的。 3.2 单选题

1.下列关于语句的描述中,错误的是( A )。 A.C++程序中的函数是由若干条语句组成的 B.每条语句都要实现某种操作 C.条件语句是用来实现分支操作的

D.循环语句是用来在一定条件下重复执行某段程序的 2.下列关于条件语句的描述中,错误的是( C )。 A.if语句中最多只能有一个else子句 B.if语句的if体内可以出现开关语句

C.if语句中else if子句和else子句的顺序是没有限制的 D.if语句中else子句是与它最近的if子句配对的 3.下列关于开关语句的描述中,错误的是( B )。 A.开关语句中,case子句的个数是不受限制的

B.开关语句中,case子句的语句序列中一定要有break语句 C.开关语句中,default子句可以省略

D.开关语句中,右花括号具有退出开关语句的功能 4.下列关于循环语句的描述中,错误的是( A )。

A.while循环语句中<条件>给定的表达式不能为非0的常量,否则便是死循环 B.for循环语句的循环体内可以出现while循环语句、do-while循环语句和for循环语句 C.循环语句的循环体可以是空语句

D.循环语句的循环体内可以出现break语句,也可以出现continue语句 5.已知:int i(3);下列do-while循环语句的循环次数是( D )。

do{

cout<

A.0 B.3 C.1 D.无限 6.下列for循环语句的循环次数是( B )。

for(int i(0), j(5); i=3; i++, j--);

A.3 B.无限 C.5 D.0 7.下列while循环语句的循环次数是( A )。

while(int i(0)) i--;

A.0 B.1 C.2 D.无限 8.下列程序段执行后,j值是( B )。

for(int i(0), j(0); i<10; i++) if(i) j++;

A.0 B.9 C.10 D.无限

9.已知:typedef char CH;下列描述中,正确的是( A )。 A.使用CH定义的变量是char型变量 B.使用CH定义的是一个字符常量

第 15 页 共 77 页


《c++语言程序设计教程》习题及解答(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:三相短路电流计算

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: