【问】关于火车到站的问题?

1.         一个火车站有两列火车经过,一列每10分钟向南开,一列每10分钟向北开,小明每天要坐火车去上班,无论他什么时候到都有车(随时)。坐了一年的火车后,小明统计了一下,为什么坐向南开的火车占了91%,请问这是为什么?各位大牛是否遇到过此类问题,请不吝赐教!

2.

一个关于正方形个数的算法?一个高4长6的矩形,每个小方格都是一个正方形,问最多有多少个正方形?如图:

      
      
      
      

 

 

 


 

A:

1.?

2在园子里openorz这位仁兄帮助下推导出这个n*(N+2)公式?用代码来表示是

 1 public int SquareSum(int SquareWidth)
2 {
3 int Sum=0;
4 if(SquareWidth!=null && SquareWidth!=0)
5 {
6 for(int i=0;i<SquareWidth;i++)
7 {
8 Sum+=SquareWidth*(SquareWidth+2);
9 }
10 }
11 retutn Sum;
12 }

若求最后结果,只要把宽为4传入参数就行了。

PS:在此也感谢openorz兄弟,自由,分享,交流,我想这就是博客园的所倡导的吧。

作   者:lonely_rain
出   处:http://www.cnblogs.com/lonely_rain/
个人站:  http://www.thinkeer.com/
欢迎任何形式的转载,但请务必注明出处。

转载于:https://www.cnblogs.com/lonely_rain/archive/2011/11/14/2248753.html

在C语言中解决火车问题,你可以通过接收用户输入的出发时间和到达时间,并计算两者之间的差值。这里假设时间是以24小时制表示的整数形式,例如,0-23代表小时,0-59代表分钟。以下是简单的步骤: 1. 首先,从用户那里获取出发时间和到达时间的小时数和分钟数。可以使用`scanf`函数读取用户的输入。 ```c int hour_departure, minute_departure, hour_arrival, minute_arrival; ``` 2. 接收输入并存储数据: ```c scanf("%d:%d %d:%d", &hour_departure, &minute_departure, &hour_arrival, &minute_arrival); ``` 3. 计算时间差,注意如果出发时间晚于到达时间,需要调整结果: ```c int total_minutes = (hour_arrival - hour_departure) * 60 + (minute_arrival - minute_departure); if (total_minutes < 0) { total_minutes += 24 * 60; // 转换为负值后加一天的总分钟数 } ``` 4. 将总的分钟数转换为小时和分钟,并按照"hh:mm"的格式输出: ```c int hours = total_minutes / 60; int minutes = total_minutes % 60; printf("%02d:%02d", hours, minutes); // "%02d"确保两位数字,不足补零 ``` 完整的示例代码如下: ```c #include <stdio.h> int main() { int hour_departure, minute_departure, hour_arrival, minute_arrival; scanf("%d:%d %d:%d", &hour_departure, &minute_departure, &hour_arrival, &minute_arrival); int total_minutes = (hour_arrival - hour_departure) * 60 + (minute_arrival - minute_departure); if (total_minutes < 0) { total_minutes += 24 * 60; } int hours = total_minutes / 60; int minutes = total_minutes % 60; printf("%02d:%02d\n", hours, minutes); return 0; }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值