為什么這個代碼不能提交?
#include <stdio.h>
int main()?
{?
? ? /* 定義需要計算的日期 */
? ? int year = 2008;
? ? int month = 8;
? ? int day = 8;
? ? int sum = 0;
? ? /*
? ? ?* 請使用switch語句,if...else語句完成本題
? ? ?* 如有想看小編思路的,可以點擊左側任務中的“不會了怎么辦”
? ? ?* 小編還是希望大家獨立完成哦~
? ? ?*/
? ? do
? ? {
? ? ? ? switch(month)
? ? ? ? {
? ? ? ? ? ? case 1:
? ? ? ? ? ? case 3:
? ? ? ? ? ? case 5:
? ? ? ? ? ? case 7:
? ? ? ? ? ? case 8:
? ? ? ? ? ? sum+=31;
? ? ? ? ? ? break;
? ? ? ? ? ? case 2:
? ? ? ? if(year%4==0&&year%100!=0||year%400==0)
? ? ? ? {
? ? ? ? ? ? sum+=29;
? ? ? ? }
? ? ? ? else
? ? ? ? {
? ? ? ? ? ? sum+=28;
? ? ? ? }
? ? ? ? break;
? ? ? ? default:
? ? ? ? sum+=30;
? ? ? ? break;
? ? ? ? }
? ? }while(month>=2);
? ? printf("%d",sum);
return 0;
}
2019-09-03
你swtich里面是month = 8,對應 執行case8里面的代碼
所以對于你case2 里面的判定 拿到外面來 對sum進行運算
#include <stdio.h>
int main()
{
?/* 定義需要計算的日期 */
?int year = 2008;
?int month = 8;
?int day = 8;
?int sum = 0;
?/*
? * 請使用switch語句,if...else語句完成本題
? * 如有想看小編思路的,可以點擊左側任務中的“不會了怎么辦”
? * 小編還是希望大家獨立完成哦~
? */
?do
?{
??switch (month)
??{
??case 1:
??case 3:
??case 5:
??case 7:
??case 8:
???sum = 31 + 31 + 30 + 31 + 30 + 31 + day;
???break;
??default:
???printf("只有十二個月");
???break;
??}
?} while (month <= 2);
?if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0)
?{
??sum += 29;
??printf("%d年%d月%d日是該年的第%d天", year, month, day, sum);
?}
?else
?{
??sum += 28;
??printf("%d年%d月%d日是該年的第%d天", year, month, day, sum);
?}
?return 0;
}
2019-09-03
高手就是高手
2019-09-03
#include <stdio.h>
int main()
{
?/* 定義需要計算的日期 */
?int year = 2008;
?int month = 8;
?int day = 8;
?int sum = 0;
?/*
? * 請使用switch語句,if...else語句完成本題
? * 如有想看小編思路的,可以點擊左側任務中的“不會了怎么辦”
? * 小編還是希望大家獨立完成哦~
? */
?if (month > 2)
?{
??do
??{
???switch (month)
???{
???case 1:
???case 3:
???case 5:
???case 7:
???case 8:
????sum = 31 + 31 + 30 + 31 + 30 + 31 + day;
????break;
???default:
????printf("只有十二個月");
????break;
???}
??} while (month <= 2);
??if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0)
??{
???sum += 29;
???printf("%d年%d月%d日是該年的第%d天", year, month, day, sum);
??}
??else
??{
???sum += 28;
???printf("%d年%d月%d日是該年的第%d天", year, month, day, sum);
??}
?}
?else
?{
??if (month = 1)
??{
???sum = day;
???printf("%d年%d月%d日是該年的第%d天", year, month, day, sum);
??}
??else
??{
???sum = 31 + day;
???printf("%d年%d月%d日是該年的第%d天", year, month, day, sum);
??}
?}
?return 0;
}
這樣寫 比較復雜 但是應該可以 我也C萌新