第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

用switch和if,設計一個2008年8月8日是一年的第幾天的程序,我的程序到底錯在哪里了?求幫助

用switch和if,設計一個2008年8月8日是一年的第幾天的程序,我的程序到底錯在哪里了?求幫助

C C#
慕粉呢里 2016-12-05 17:45:22
#include<stdio.h> int main() { int year=2008; int month=8; int day=8; int days=0; int i=1; int month=month-1; for(i;i<=month;i++) { switch(month) { case 1: case 3: case 5: case 7: case 9: case 11: days=days+31; break; case 2: days=days+28; break; case 4: case 6: case 8: case 10: case 12: days=days+30; break; } } days=days+day; if(year%4==0&&year%100!=0||year%400==0) { days=days+1; } printf("%d",days); return 0; }
查看完整描述

8 回答

已采納
?
望遠

TA貢獻1017條經驗 獲得超1032個贊

#include<stdio.h>
int?main()
{
int?year=2008;
int?month=8;
int?day=8;
int?days=0;
int?i=1;
for(i;i<month;i++)
{
switch(i)
{
case?1:?case?3:?case?5:
case?7:?case?8:?case?10:
case?12:?
	days=days+31;break;
case?2:
	days=days+28;break;
case?4:?case?6:?case?9:
case?11:
	days=days+30;break;
}
}
days=days+day;
if(year%4==0&&year%100!=0||year%400==0)
{
days=days+1;
}
printf("%d\n",days);
return?0;
}

http://img1.sycdn.imooc.com//584569440001201404050092.jpg

查看完整回答
2 反對 回復 2016-12-05
點擊展開后面4
?
望遠

TA貢獻1017條經驗 獲得超1032個贊

1,3,5,7,8,10,臘31天永不差!

?你這里不是應該將i作為switch參數嗎?

查看完整回答
1 反對 回復 2016-12-05
  • 慕粉呢里
    慕粉呢里
    你說的對,但改完后輸出是374,還是不對,您看下還有問題 #include int main() { int year=2008; int month=8; int day=8; int days=0; int i=1; int month=month-1; for(i;i&lt;=month;i++) { switch(i) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: days=days+31; continue; case 2: days=days+28; continue; case 4: case 6: case 9: case 11: days=days+30; continue; } } days=days+day; if(year%4==0&amp;&amp;year%100!=0||year%400==0) { days=days+1; } printf("%d",days); return 0; }
?
天降之物

TA貢獻1條經驗 獲得超0個贊

return 0;干嘛要返回0

刪掉這個 ??

查看完整回答
反對 回復 2016-12-06
?
磊46

TA貢獻1條經驗 獲得超0個贊

2008是閏年 二月29天
查看完整回答
反對 回復 2016-12-06
?
非主流1

TA貢獻2條經驗 獲得超0個贊

還有我看見你month定義類型,定義了兩次
查看完整回答
反對 回復 2016-12-05
  • 慕粉呢里
    慕粉呢里
    問下我的第二個month定義導致month變成了什么?
?
我系她心

TA貢獻1條經驗 獲得超0個贊

把continue 換成break
查看完整回答
反對 回復 2016-12-05
?
慕粉呢里

TA貢獻4條經驗 獲得超0個贊


你說的對,改成i后結果還是不對,結果輸出是374,還有哪里錯嗎

#include<stdio.h>
int main()
{
int year=2008;
int month=8;
int day=8;
int days=0;
int i=1;
int month=month-1;
for(i;i<=month;i++)
{
switch(i)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
days=days+31;
continue;
case 2:
days=days+28;
continue;
case 4:
case 6:
case 9:
case 11:
days=days+30;
continue;
}
}
days=days+day;
if(year%4==0&&year%100!=0||year%400==0)
{
days=days+1;
}
printf("%d",days);
return 0;
}

查看完整回答
反對 回復 2016-12-05
  • 望遠
    望遠
    switch語句里面不是應該用break來跳出嗎?用continue是干什么?試試換成break
  • 慕粉呢里
    慕粉呢里
    因為這個switch嵌套在for循環(huán)里,用break直接退出循環(huán)了啊
  • 望遠
    望遠
    這個break是為了跳出switch多分支判斷
?
慕粉呢里

TA貢獻4條經驗 獲得超0個贊


你說的對,改成i后結果還是不對,結果輸出是374,還有哪里錯嗎

#include<stdio.h>
int main()
{
int year=2008;
int month=8;
int day=8;
int days=0;
int i=1;
int month=month-1;
for(i;i<=month;i++)
{
switch(i)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
days=days+31;
continue;
case 2:
days=days+28;
continue;
case 4:
case 6:
case 9:
case 11:
days=days+30;
continue;
}
}
days=days+day;
if(year%4==0&&year%100!=0||year%400==0)
{
days=days+1;
}
printf("%d",days);
return 0;
}

查看完整回答
反對 回復 2016-12-05
?
慕粉呢里

TA貢獻4條經驗 獲得超0個贊

改了這個后還是不對是為什么

查看完整回答
反對 回復 2016-12-05
?
一次就好0

TA貢獻8條經驗 獲得超10個贊


首先8、10、12月份都是31天,9、11是30天.

查看完整回答
反對 回復 2016-12-05
  • 8 回答
  • 3 關注
  • 2725 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號