没有合适的资源?快使用搜索试试~ 我知道了~
首页C++程序设计(第二版_吴乃陵_况迎辉)课后答案
资源详情
资源评论
资源推荐
n
第二章 基本控制结构程序设计习题
1
第二章 基本控制结构程序设计习题
一.基本概念与基础知识自测题
3.1
程序阅读题
3.1.1
设有说明
:
int a=3, b=100;
下面的循环语句执行 (
1
) 次,执行后
a
、
b
的值分别为
(
2
)
、 (
3
) 。
while(b/a>5)
{ if(b-a>25) a+
+; else b/=a;
} 解答: 本题检查学生整除的概念。
跟踪:
a
3
b
100
b/a
33
循环次数
1
b-a
97
4 100 25 2 96
5
…
100
…
20
…
3
…
95
…
15 100 6 13 85
16 100 6 14 84
17 100 5
停
(
1
)
14
(
2
)
17
(
3
)
100
3.1.2
设有说明
:
int n,x,k,y;
下面程序段的功能是备选答案中的
(
1
)
,当
n=10,x=10
打印结果是 (
2
)
。
cin>>x>>n;
k=0;
do{ x
/=2;
k++;
}while(k<n);
y=1+x;
k=0;
do{ y=
y*y; k+
+;
}while(k<n);
cout<<y<<endl;
备选答案:
A.
y
=
(1
+
x
)
n
n
B. y
=
(1
+
x
)
2
n
2
n
C. y
=
(1
+
x
)
n
2
n
D. y
=
(1
+
x
)
2
2
n
+
1
第二章 基本控制结构程序设计习题
2
解答:
第一个循环使
x
成为:
x
2
n
(1)B
;
y
成为:
1
+
x
2
n
;第一个循环使 y 成为:
(1
+
x
)
2
n
;
2
n
考虑整除,
x
2
n
(2)1
连除 4 次以后为零,所以:
3.1.3
请看如下程序段:
if(num==1) cout<<”Alpha”;
else if(num==2) cout<<”Bata”;
else if(num==3) cout<<”Gamma”;
else cout<<”Delta”;
当num的值分别为 1、2、3 时,上面程序段的输出分别为( 1
) 、( 2
) 、( 3
) 。
解答:
检查条件语句与字符串输出概念:
(1)Alpha
(
2
)
Bata
(
3
)
Gamma
3.1.4 执行下面程序段后,m和k的值分别为
( 1 ) 、
( 2 ) 。
int m,k;
for(k=1,m=0;k<=50;k++){
if(m>=10) break; if(m
%2==0){
m+=5;
continue;
}
m-=3;
}
解答:注意
continue
语句的使用
初值
m=1 k=0
第
1
次循环后
m=5 k=1
第
2
次循环
m=2 k=2
第
3
次循环
m=7 k=3
第
4
次循环
m=4 k=4
第
5
次循环
m=9 k=5
第
6
次循环
m=6 k=6
第
7
次循环
m=11
结束,
k++
未做
(
1
)
11
(
2
)
6
二.编程与综合练习题
3.2
编程求一元二次方程
ax2+bx+c=0
的根。包括以下判断和结果:若输入
a=0
,给出提示;
第二章 基本控制结构程序设计习题
3
若
Δ>0
,输出两个不等实根;若
Δ=0
,输出两个相等实根;若
Δ<0
,输出两个复数根。
解:本题以一个绝对值极小的数作为实数
0
。
#include <iostream.h>
#include <math.h>
#include <stdlib.h>
void main(){
double a,b,c;
double delta,x1,x2;
const double zero=1e-9; //定义一个很小的常数
int sign;
cout<<"输入三个系数a(a!=0), b, c:"<<endl;
cin>>a>>b>>c;
if(fabs(a)<zero){ cout<<"二次项系数
为0,方程根是-c/b"; exit(0);
} cout<<"a="<<a<<'\t'<<"b="<<b<<'\
t'<<"c="<<c<<endl; delta=b*b-4*a*c;
if(fabs(delta)<zero){//绝对值很小的数即被认为
是0
cout<<"方程有两个相同实根:";
cout<<"x1=x2="<<-b/(2*a)<<endl;
}
else {
if(delta>0)
sign=1;
else
sign=0;
delta=sqrt(fabs(delt
a)); x1=-b/(2*a);
x2=delta/(2*a);
if(sign){ cout<<"方程有两个不同实根:";
cout<<"x1="<<x1+x2<<'\t'<<"x2="<<x1-
x2<<endl;
}
else{//delta<0 cout<<"方程无实根!有两个不同复数根:";
cout<<"x1="<<x1<<"+i"<<x2<<'\t'<<"x2="<<x1<<"-
i"<<x2<<endl;
}
}
}
3.3 设计程序将输入的百分制成绩转换为五分制输出,90 分以上为 5 分,80
∼
89 分为 4 分,
70
∼
79 分为 3 分,60
∼
69 分为 2 分,60 分以下为 1 分。 解:
10 分一档用 10 进行整除获得,转换用开关语句实行。
第二章 基本控制结构程序设计习题
4
#include <iostream.h>
void main(){
int mark,result; //mark是百分制成绩,result是5分制
cout<<"请输入百分制成绩:"<<endl;
cin>>mark;
if(mark<0) {
cout<<"缺
考!"<<endl;
return;
}
switch
(mark/10){
case 9: case
10: result=5;
cout<<"输出五分制成绩:"<<result<<endl;
break;
case 8: result=4; cout<<"输出五分制成
绩:"<<result<<endl; break;
case 7: result=3; cout<<"输出五分制成
绩:"<<result<<endl; break;
case 6: result=2; cout<<"输出五分制成
绩:"<<result<<endl; break;
case 5:case 4:case 3:case 2:case
1:case 0: result=1; cout<<"输出五
分制成绩:"<<result<<endl; break;
default:
cout<<"输入错误!"<<endl;
}
}
3.4
编程打印如下图形:
*
* * *
* * * * *
* * * * * * *
* * *
* * *
* * *
解:难点在三角形左边的空格的控制,嵌套一个循环语句完成此任务。
第二章 基本控制结构程序设计习题
5
#include <iostream.h>
void main(){
int i,j;
for (i=1;i<=4;i++) {
for(j=4-i;j>0;j--)//三角形每行前部的空格
cout<<" ";
for(j=1;j<=2*i-1;j++)
cout<<" *";
cout<<endl;
}
for(i=1;i<=3;i++) cout<<" * * *\n";
}
3.5 编程输出下列图形,中间一行英文字母由输入得到。
A
B B B
C C C C C
D D D
D
D
D D
C C C C C
B B B
A
解:分上三角和下三角两部分分别处理左边的空格。
#include <iostream.h>
void
main(){
char
in; int
i,j;
do{
cout<<"输入一个字母:";
cin>>in;
if((in>=97)&&(in<=122)) in-=32;//小写改大写
}while((in<65)||(in>90));
int line=in-'A';
for (i=0;i<=line;i++){//
上三角
for(j=line-i;j>0;j--)
cout<<" ";//前方空格
for(j=1;j<=2*i+1;j++)
cout<<' '<<char(i+'A');
cout<<endl;
}
for (i=line;i>0;i--){//下三角(少一行)
for(j=0;j<=line-i;j++)
cout<<" ";
for(j=1;j<=2*i-1;j++)
cout<<' '<<char(i-1+'A');
剩余63页未读,继续阅读
子胥吾有
- 粉丝: 2
- 资源: 4
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- ExcelVBA中的Range和Cells用法说明.pdf
- 基于单片机的电梯控制模型设计.doc
- 主成分分析和因子分析.pptx
- 共享笔记服务系统论文.doc
- 基于数据治理体系的数据中台实践分享.pptx
- 变压器的铭牌和额定值.pptx
- 计算机网络课程设计报告--用winsock设计Ping应用程序.doc
- 高电压技术课件:第03章 液体和固体介质的电气特性.pdf
- Oracle商务智能精华介绍.pptx
- 基于单片机的输液滴速控制系统设计文档.doc
- dw考试题 5套.pdf
- 学生档案管理系统详细设计说明书.doc
- 操作系统PPT课件.pptx
- 智慧路边停车管理系统方案.pptx
- 【企业内控系列】企业内部控制之人力资源管理控制(17页).doc
- 温度传感器分类与特点.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0