1 / 12
文档名称:

从问题到程序--习题答案.doc

格式:doc   大小:143KB   页数:12页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

从问题到程序--习题答案.doc

上传人:cjc2202537 2018/2/14 文件大小:143 KB

下载得到文件列表

从问题到程序--习题答案.doc

相关文档

文档介绍

文档介绍:从问题到程序—高级语言程序设计
第二章
练****br/>1. 指出下面的哪些字符序列不是合法的标识符:
_abc x+- 3x1 Xf_1__4 Eoof___
x__x__2 ____ I am
答:不合法的标示符有:
a$#24 非法符号#
x+- 非法符号#
3x1 不是以英文字母开头
I am 非法符号“空格”
bg--1 非法符号-
2. 手工计算下列表达式的值:
1)125 + 0125 2)0XAF - 0XFA
3)24 * 3 / 5 + 6 4)36 + - (5 - 23) / 4
5)35 * 012 + 27 / 4 / 7 * (12 - 4)
答:1)210 2)-75 3)20 4)40 5)350
3. 在下面表达式的计算过程中,在什么地方将发生类型转换,各个转换是从什么类型转换
到什么类型,表达式计算的结果是什么?
1)3 * (2L + ) - 012 + 44
2)3 * (int)sqrt(34) - sin(6) * 5 + 0x2AF
3)cos( + 4) - 6 *27L + 1526 -
答:1) 2) 在此题中十六进制数会在计算中(编译时)自动转成十进制数
3)
4. 写程序计算第3 题中各个表达式的值。
答:
#include<>
#include<>
int main(){
printf("%f\n",3 * (2L + ) - 012 + 44);
printf("%f\n",3 * (int)sqrt(34) - sin(6) * 5 + 0x2AF);
printf("%f\n",cos( + 4) - 6 *27L + 1526 - );
system("pause");
return 0;
}
5. 写程序计算下面各个表达式的值:
1) 2 34
1 257
.
+ 2) 1065
24*13
3) 23 582
7 96 3 67
.
. / . 4) π2 +1 7)ln ln(10 1) 2π+
5)log5 2π−1 6)e π+1 7)arctan(log ( )) 3 e + π
8)
13−(− )2 9)1 2
3 4 5 + + / 10)ln(2π 13+ e )
6. ,。写几个简单程序,分别计算出直径100 毫米和
150 毫米的铁球与金球的重量。
答:
#include<>
double f1(double r){
double v,w;
v=*r*r*r*;
w=*v;
return w;
}
double f2(double r){
double v,w;
v=*r*r*r*;
w=*v;
return w;
}
int main(){
printf("铁球的重量为: %f,金球的重量为: %f\n",f1(),f2());
printf("铁球的重量为: %f,金球的重量为: %f\n",f1(),f2());
system("pause");
return 0;
}
7. 写程序计算 5x2 + 2x + 6 的两个根,考虑用合适的方式输出。(提示:对这个具体问题,可以先人工计算出判别式 b2 − 4ac 的值,以此作为已知信息,就可以写出程序
了。)
答:
#include <>
#include <>
void f(double a,double b,double c){
double temp=b*b-4*a*c;
if(temp>0)
printf("方程的根为:%f,%f",(-b+sqrt(temp))/2/a,(-b-sqrt(temp))/2/a);
else if(temp==0)
printf("方程有两个相同的根为:%f",-b/2/a);
else
printf("方程无解!");

}
int main(){
f(5,2,6); //可以测试不同的数据
system("pause");
return 0;
}
8. 在计算机上试验本章正文中的一些程序。对它们做一些修改,观察程序加工和运行的情
况,并对程