-
如果你有太多其他的東西,你無法分辨哪個對應哪個,所以我會讓你休息一下。 和**返回"改變"表示已經改動了,有些地方你寫了賦值,輸出的時候你寫了位址,所以位址就輸出出來了。
#include
main()
int y,m,d;
scanf("%d-%d-%d",&y,&m,&d);更改 if (m==1||m==3||m==5||m==7||m==8||m==10)
if (m<=30&&m>=1)
y=y,m=m,d=d+1;
elsey=y,m=m+1,d=1;
elseif(m==12)。
if (d<=30&&d>=1)
y=y,m=m,d=d+1;
elsey=y+1,m=1,d=1;
elseif(m==2)。
if (d<=28&&d>=1)
y=y,m=m,d=d+1;
elsey=y,m=m+1,d=1;
elseif (d<=29&&d>=1)
y=y,m=m,d=d+1;
elsey=y,m=m+1,d=1;
elseif (m==1||m==3||m==5||m==7||m==8||m==10)
if (d<=30&&d>=1)
y=y,m=m,d=d+1;
elsey=y,m=m+1,d=1;
elseif(m==12)。
if (d<=30&&d>=1)
y=y,m=m,d=d+1;
elsey=y+1,m=1,d=1;
elseif(m==2)。
if (d<=27&&d>=1)
y=y,m=m,d=d+1;
elsey=y,m=m+1,d=1;
elseif (d<=29&&d>=1)
y=y,m=m,d=d+1;
elsey=y,m=m+1,d=1;
printf("%d,%d,%d", y, m, d);如果更改了一些重複值,則無需分配值,即可儲存操作。
-
更改和簡化如下。
#include
void main()
int y,m,d;
scanf("%d-%d-%d",&y,&m,&d);請注意前面的格式 % 和後面的 d 格式。
if (m==1||m==3||m==5||m==7||m==8||m==10||m==12) 每月 31 天。
if (d<=30&&d>=1)
d=d+1;y、m 保持不變,無需重新分配。
elsem=m+1;賦值語句之間有乙個分號,如果是逗號,則變為逗號語句。
d=1;否則,如果 (m==2) 缺少“=”。
閏年只在二月判斷。
if (d<=27&&d>=1)
d=d+1;
elsem=m+1;
d=1;else
if (d<=28&&d>=1)
d=d+1;
elsem=m+1;
d=1;else
if (d<=29&&d>=1)
d=d+1;
elsem=m+1;
輸出是記憶體位址。
-
#include
main()
int y,m,d;
scanf("%d-%d-%d",&y,&m,&d);
if (m==1||m==3||m==5||m==7||m==8||m==10)
if (m<=30&&m>=1)
y=y,m=m,d=d+1;
elsey=y,m=m+1,d=1;
else if(m==12) *判斷 ==* if (d<=30&&d>=1)。
y=y,m=m,d=d+1;
elsey=y+1,m=1,d=1;
else if(m==2)
if (d<=28&&d>=1)
y=y,m=m,d=d+1;
elsey=y,m=m+1,d=1;
else if (d<=29&&d>=1)y=y,m=m,d=d+1;
elsey=y,m=m+1,d=1;
elseif (m==1||m==3||m==5||m==7||m==8||m==10)
if (d<=30&&d>=1)
y=y,m=m,d=d+1;
elsey=y,m=m+1,d=1;
else if(m==12)
if (d<=30&&d>=1)
y=y,m=m,d=d+1;
elsey=y+1,m=1,d=1;
else if(m==2)
if (d<=27&&d>=1)
y=y,m=m,d=d+1;
elsey=y,m=m+1,d=1;
elseif (d<=29&&d>=1)
y=y,m=m,d=d+1;
elsey=y,m=m+1,d=1;
printf("%d-%d-%d",y,m,d);*匯出時不要新增 &*
-
如果你想制定乙個改進計畫,我也會有乙個。
#include
int main()
int month[12]=;
int year,mth,day;
month[1]=29;
if(mth==12){
if(day==month[11]){
year+=1;
mth=1;
day=1;
elseday+=1;
else{if(day==month[mth-1]){mth+=1;
day=1;
elseday+=1;
printf("%d-%d-%d",year,mth,day);
return 0;
從**本身和執行情況來看,可執行程式的內容與貼上的**不匹配(可能是修改後沒有重新編譯,而修改前的**執行,否則不會**現在出現可以編譯傳遞的錯誤,例如第二行末尾有更多的“op”, 和“現有1人捐款無產出”),修改建議如圖所示: