的详细设计的基本原则。它的主要观点是采用自顶向下、逐步求精的程序设计方法;使用
的详细设计的基本原则。它的主要观点是采用自顶向下、逐步求精的程序设计方法;使用3
习题3参考解答
1?什么是算法?常用描述算法的工具有哪些?
解:所谓算法,就是计算机解决某一个问题的具体方法和步骤。常用描述算法的工具 有流程图、N-S图。
2?试用流程图表示求 3个数中的最大数的算法。
解:流程图如图1-1所示。
3?什么是结构化程序设计?它的主要内容是什么?
解:结构化程序设计(structured programming )是进行以模块功能和处理过程设计为主
3种基本控制结构构造种基本控制结构构造程序,任何程序都可由顺序、选择、循环这 4?从键盘输入3
3种基本控制结构构造
解:
#in clude
int mai n()
{
int a,b,c,temp;
scan f("%d,%d,%d",&a,&b, &c);
if(a>b){temp=a;a=b;b=temp;}
if(a>c){temp=a;a=c;c=temp;} if(b>c){temp=b;b=c;c=temp;} prin tf("%d,%d,%d\n",a,b,c);
return 0;
}
程序运行情况如下:
12,8,29/
8,12,29
5.输入一个华氏温度 F,要求输出摄氏温度C。公式为
5
C -(F 32)
9
要求要有文字说明,取两位小数。
解:
#in clude
int mai n()
{
float f,c;
printf("请输入一个华氏温度:\n");
scan f("%f", &f);
c=5*(f-32)/9;
prin tf("%.2f\n",c);
return 0;
}
程序运行情况如下:
请输入一个华氏温度:
36 /
2.22
6.输入一个三位整数,要求输出它的百位数、十位数和个位数。
解:
#in clude
int mai n()
{
int num;/* num表示一个三位整数*/
int a,b,c;/* a,b,c分别表示百位、十位和个位上的数字*/
scan f("%d", &n um);
a=n um/100;
b=( num-a*100)/10;
c=n um-a*100-b*10;
prin tf("%d,%d,%d\n",a,b,c);
return 0;
}
程序运行情况如下:
123/
1,2,3
7?小红有面值1分的硬币638枚,可以兑换成几元几角剩余几分?
说明:100枚1分的硬币可以兑换成1元,10枚1分的硬币可以兑换成1角。兑换原
则是面额从大到小。
解:
#in clude
int mai n()
{
int a=638;
int yua n;
int jiao;
int fen, temp;
yua n=a/100;
temp=a%100;
jiao=temp/10;
fen=temp%10;
prin tf("1元的数量:
%d\n",yua n);
prin tf("1角的数量:
%d\n" ,jiao);
prin tf("1分的数量:
%d\n",fe n);
return 0;
}
程序运行结果如下:
1元的数量:6
1角的数量:3
1分的数量:8
scanf函数输入数据,printf&设圆柱的半径为2.5,圆柱的高为
scanf函数输入数据,printf
函数输出计算结果,输出时要求有文字说明,取两位小数。
解:
#in clude
#define PI 3.1415926
int mai n()
{
float r,h,v;
prin tf("Please in put r,h:");
scan f("%f,%f", &r,&h);
printf("半径为:%.2f,高为:%.2f的圆柱体体积为:%.2f\n",r,h,v);
return 0;
}
程序运行情况如下:
Please input r,h:2.5,4/
半径为:2.50,高为:4.00的圆柱体体积为:78.54
9?输入三角形的三边,计算三角形的面积。要求:对输入的3个边长进行判断,如果
能构成三角形,则计算三角形的面积;否则,则显示“构不成三角形!”信息。
解:
#in clude
#in clude
int mai n()
{
int a,b,c;
float s,area;
scan f("%d,%d,%d",&a,&b,& c);
if(a+b>c && a+c>b &&b+c>a)
{
s=(float)(a+b+c)/2;
area=sqrt(s*(s_a)*