有沒有大神看一下這段代碼輸出為什么是211,而不是正確答案221
#include <stdio.h>
int main()?
{?
? ? /* 定義需要計(jì)算的日期 */
? ? int year = 2008;
? ? int month = 8;
? ? int day = 8;
? ? /*
? ? ?* 請(qǐng)使用switch語句,if...else語句完成本題
? ? ?* 如有想看小編思路的,可以點(diǎn)擊左側(cè)任務(wù)中的“不會(huì)了怎么辦”
? ? ?* 小編還是希望大家獨(dú)立完成哦~
? ? ?*/
? ? int i;
? ? int sum=0;
? ? for(i=1;i<month;i++)
? ? {
? ? ? ? if(i==1&&i==3&&i==5&&i==7&&i==8&&i==10&&i==12)
? ? ? ? ? ?{?
? ? ? ? ? ? ? ?sum=sum+31;
? ? ? ? ? ?}
? ? ? ? ? ? else if(i==4&&i==6&&i==9&&i==11)
? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? sum=sum+30;
? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? else if(year%4==0||year%400==0&&year%100!=0)
? ? ? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? ? ? sum=sum+29;
? ? ? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? ? ? else
? ? ? ? ? ? ? ? ? ? ? ? sum=sum+28;
? ? }
? ? sum=sum+day;
? ? printf("2008年8月8日這一天,是該年中的第%d天 ",sum);
? ? return 0;
? ? ? ? ? ? ?
2020-05-12
2020-05-12
for if...else 寫法簡(jiǎn)單點(diǎn)
#include <stdio.h>
int main()?
{?
? ? /* 定義需要計(jì)算的日期 */
? ? int year = 2008;
? ? int month = 8;
? ? int day = 8;
? ? ?int sum=0;
? ? for(int i=1;i<month;i++){
? ? ? ? if(i==2){
? ? ? ? ? ? sum+=28;
? ? ? ? ? ? if(year%400==0||(year%4==0&&year%100!=0)){
? ? ? ? ? ? ? ? sum++;
? ? ? ? ? ? }
? ? ? ? }else if(i%2==0){
? ? ? ? ? ? sum+=30;
? ? ? ? }else{
? ? ? ? ? ? sum+=31;
? ? ? ? }
? ? }
? ? sum+=day;
? ? printf("2008年8月8日是該年的第%d天",sum);
2020-05-12
#include <stdio.h>
int main()?
{?
? ? /* 定義需要計(jì)算的日期 */
? ? int year = 2008;
? ? int month = 8;
? ? int day = 8;
? ? ?int sum=0;
? ? for(int i=1;i<month;i++){
? ? ? ? if(i==2){
? ? ? ? ? ? sum+=28;
? ? ? ? ? ? if(year%400==0||(year%4==0&&year%100!=0)){
? ? ? ? ? ? ? ? sum++;
? ? ? ? ? ? }
? ? ? ? }else if(i%2==0){
? ? ? ? ? ? sum+=30;
? ? ? ? }else{
? ? ? ? ? ? sum+=31;
? ? ? ? }
? ? }
? ? sum+=day;
? ? printf("2008年8月8日是該年的第%d天",sum);
2020-05-12
&&是并且? 換成 |? |或
2020-05-11
把&& 換成 ||
2020-05-11
計(jì)算月份對(duì)應(yīng)天數(shù)的邏輯判斷有誤:
修改后:
? ? ? ?
&&是邏輯與,||是邏輯或。你自己再多琢磨一下。