嗨我剛剛開始在大學學習C語言。現在我面臨着一個我不知道如何解決的問題。到目前爲止,我們只使用了 庫,沒有別的,scanf也是我們下週要學的 。現在我們只是使用printf來處理所有事情。 我已經學會如何說如果一年是閏年,但是,我的任務是下一個:需要創建一個程序來讀取日期並打印出第二天的日期,輸出如下:閱讀日期並打印出第二天日期的C程序
Enter a date in the form day month year: 17 5 2010
The date of the next day is: 18/5/2010
我的困境是,我不知道要使用什麼操作或如何設置代碼以確保考慮閏年,例如如果今天的日期是28 2 2010年下一個日期需要是1 3 2010年,因爲它不是閏年。 使用的唯一庫並沒有scanf函數,但(與scanf函數還) 到目前爲止,我得到這個:
#include <stdio.h>
int day, month, year, ndays, leapdays;
bool leapyear;
int main() {
day = 28;
month = 2;
year = 2010;
ndays = day + 1;
leapdays = 31;
leapyear = false;
if (leapyear % 4 == 0) {
leapyear = true;
}
if (leapyear % 100 == 0) {
leapyear = false;
}
if (leapyear % 400 == 0) {
leapyear = true;
}
if ((leapyear) && (month == 12 || month == 1 || month == 3 || month == 5
|| month == 7 || month == 8 || month == 10)) {
leapdays = 31;
}
if ((leapyear) && (month == 4 || month == 6 || month == 9 || month == 11
)) {
leapdays = 30;
}
if ((leapyear) && (month == 2)) {
leapdays = 29;
} else if ((leapyear == false) && (month == 2)) {
leapdays = 28;
}
printf ("Enter a date in the form day month year: %d %d %d \n", day,
month, year);
printf ("The date of the next day is: %d/%d/%d", ndays, month, year);
}
如果你不能使用'scanf'你打算如何獲得輸入? –
你不輸入,你只需創建變量並在其周圍改變它 –
你不需要喊,但是你確實需要處理你的問題描述,因爲它說'需要創建一個讀取日期的程序'和你的printf請求輸入。 –