c语言程序编写分解一个三位数,C语言程序设计习题3(22页)-原创力文档

的详细设计的基本原则。它的主要观点是采用自顶向下、逐步求精的程序设计方法;使用

的详细设计的基本原则。它的主要观点是采用自顶向下、逐步求精的程序设计方法;使用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)*

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值