case是不能運(yùn)算么?只能printf?下面這種不可以么?
#include <stdio.h>
int main()
{
??? int year = 2008;
??? int month = 8;
??? int day = 8;
??? int sum = 0;
switch(month)
{
??? case 1:
??????? sum += 31;
??? break;
??? case 2:
??????? if(year%4==0)
??????? {
??????????? sum += 29;
??????? }
??????? else
??????? {
??????????? sum += 28;
??????? }
??? break;
??? case 3:
??????? sum += 31;
??? break;
??? case 4:
??????? sum += 30;
??? break;
??? case 5:
??????? sum += 31;
??? break;
??? case 6:
??????? sum += 30;
??? break;
??? case 7:
??????? sum += 31;
??? break;
}
??? int sum += 8;
??? printf(%d,sum);
?return 0;
}
2018-07-29
switch是達(dá)到符合的case后順序下去。加上break之后就是只在符合的情況中變化。所以當(dāng)月份為8時(shí)…都沒有符合的case。漏寫default了。以及最后
int sum += 8;
??? printf(%d,sum);
應(yīng)該是
??sum += 8;
??? printf("%d",sum);