解题思路:
注意事项:
题目告诉我们的位置是在平面坐标系中的,所以我们要注意用距离公式【在c语言中,求a和b之间的距离x=sqrt(a*a+b*b)】去求大本营和某一个房顶之间的距离
向上取整函数 ceil(向上取整内容) ,例如ceil(6.2)==7
强制类型转换 ( 需要变成的数据类型 ) 变量名称
参考代码:
#include
#include
int main ( )
{
int n ,people ;
// n 房顶数量;people每个房顶的人数
float a1, a2 ,s ;
/* a1 大本营位置;a2 某一个房顶的位置;s 大本营和那个 房顶之间的距离 ;我觉得位置坐标可以是类似( 1.2 , 8 )所以定义了浮点型 */
float time1 ,time2 ,time3 ,time ;
/* time1 一个房顶的人上下船的时间;time2 救一个房顶的人时,船在运动的时间; time3 救一个房顶的人所用时间 ;time 救所有人所需要的总时间 */
scanf ( "%d\n",&n ) ;
for ( int i =n ;i>0 ; i-- )
{
scanf ( "%f %f %d",&a1 ,&a2, &people ) ;
s=sqrt(a2*a2+a1*a1) ;
time1=people*1+people*0.5 ;
time2=(2*s)/50 ;
//船一次救一房顶的人
time3=time1+time2 ;
time += time3 ;
}
printf("%d", (int) ceil(time) ) ;
/* time 我定义为浮点型,所以ceil(time)也是浮点型,如果要输出整数,就要让它进行强制类型转换 */
}
0.0分
0 人评分