【发布时间】:2015-05-30 15:07:21
【问题描述】:
我刚刚开始 C,我有一个任务要在输入的日期上加上 1 分钟和 30 秒,该日期由年月日小时分钟秒组成。
所以,我使用了结构构造,因为它是要求之一。
但是,在我必须处理许多情况之前,一切看起来都很好。
例如,如果输入的日期是 2014/12/31 23:58:30 或 2014/2/28 23:59:00 ,我必须更改所有内容。最简单的方法是使用 if 语句进行检查,但我认为应该换一种方式,而不是为我想要处理的每个案例编写大量 if 语句。您能否告诉我是否有另一种更清晰的方法。
struct{
int day;
int month;
int year;
}a;
struct{
int hours;
int minutes;
int seconds;
}b;
认为这种方式可能会产生更多的 if 语句。另外一个要求是如果月份输入为 3,则添加 0,输出应为 03。无论如何,我似乎无法从“电话号码”if 语句中逃脱。感谢您的回答和花费的时间!
【问题讨论】:
-
1) 请向我们展示您迄今为止所做的尝试。 2)您可以考虑使用
switch案例,但话又说回来,如果没有看到您的代码,这可能不是一个好建议。 -
更简洁的方法是使用
incrementMonth(int currentMonth),incrementMinute(int currentMinute)之类的函数,其中包含多个ifs。提供您的代码的缩短版本,让我们了解您的代码的结构。 -
你可以使用
<time.h>吗?如果您正在创建的结构是struct tm,您可以将其转换为time_t,添加 90 秒,然后从那里转换回结构。 -
"123123 if 语句"???请将其改写成看起来不像手机短信的内容。
标签: c if-statement struct