1. 程式人生 > >c語言輸入年月日,輸出該日為該年中的第多少天

c語言輸入年月日,輸出該日為該年中的第多少天

#include <stdio.h>


int main()
{
int year=0;
int mouth=0;
int day=0;
int sun=0;
printf("請輸入年月日");
scanf("%d %d %d",&year,&mouth,&day);
sun=(mouth-1)*30+day;
   if((year%4==0 && year%100!=0)|| year%400==0) { 
                if(mouth==1)
printf("%d月%d日是%d年中的%d天",mouth,day,year,sun); 
else if(mouth==2)
printf("%d月%d日是%d年中的%d天",mouth,day,year,sun); 
else if(mouth==3)
printf("%d月%d日是%d年中的%d天",mouth,day,year,sun); 
else if(mouth==4)
printf("%d月%d日是%d年中的%d天",mouth,day,year,+1); 
else if(mouth==5)
printf("%d月%d日是%d年中的%d天",mouth,day,year,sun); 
else if(mouth==6)
printf("%d月%d日是%d年中的%d天",mouth,day,year,sun+2); 
else if(mouth==7)
printf("%d月%d日是%d年中的%d天",mouth,day,year,sun+2); 
else if(mouth==8)
printf("%d月%d日是%d年中的%d天",mouth,day,year,sun+3); 
else if(mouth==9)
printf("%d月%d日是%d年中的%d天",mouth,day,year,sun+4); 
else if(mouth==10)
printf("%d月%d日是%d年中的%d天",mouth,day,year,sun+4);
else if(mouth==11)
printf("%d月%d日是%d年中的%d天",mouth,day,year,sun+5); 
else if(mouth==12)
printf("%d月%d日是%d年中的%d天",mouth,day,year,sun+5); 

else {
if(mouth==1)
printf("%d月%d日是%d年中的%d天",mouth,day,year,sun); 
else if(mouth==2)
printf("%d月%d日是%d年中的%d天",mouth,day,year,sun); 
else if(mouth==3)
printf("%d月%d日是%d年中的%d天",mouth,day,year,sun-1); 
else if(mouth==4)
printf("%d月%d日是%d年中的%d天",mouth,day,year); 
else if(mouth==5)
printf("%d月%d日是%d年中的%d天",mouth,day,year,sun-1); 
else if(mouth==6)
printf("%d月%d日是%d年中的%d天",mouth,day,year,sun+1); 
else if(mouth==7)
printf("%d月%d日是%d年中的%d天",mouth,day,year,sun+1); 
else if(mouth==8)
printf("%d月%d日是%d年中的%d天",mouth,day,year,sun+2); 
else if(mouth==9)
printf("%d月%d日是%d年中的%d天",mouth,day,year,sun+3); 
else if(mouth==10)
printf("%d月%d日是%d年中的%d天",mouth,day,year,sun+3);
else if(mouth==11)
printf("%d月%d日是%d年中的%d天",mouth,day,year,sun+4); 
else if(mouth==12)
printf("%d月%d日是%d年中的%d天",mouth,day,year,sun+4);




      return 0; 

}

一開始有兩個錯誤

1.

判斷的時候寫成了if(mouth=x),所以導致輸出的結果跟出入的不一樣 應改為if(mouth==x)

2.

雖然if後面或者else if 後面都是單個語句 不用加括號,但是與第一個if對應的else後面還有一個if,不加括號的情況下系統理解為,與第一個if對應的else與這個else後面的if 組成else if

所以與第一個if對應的else後面要加大括號

相關推薦

c語言輸入年月日輸出該日年中多少

#include <stdio.h>int main(){int year=0;int mouth=0;int day=0;int sun=0;printf("請輸入年月日");scanf("%d %d %d",&year,&mouth,&

c語言 輸入年月日輸出它是本年

#include <stdio.h> int main() { int year,month,day;//年月日 int i; int sum = 0;//標記天數

【java學習記錄】5.輸入年月日計算其當年的

public class Compute_Year_Month_Day {public static void main(String args[]){Scanner sc = new Scanner(System.in);//輸入年份System.out.print("請輸

【資料結構與演算法】輸入年、月、日輸出該日

關鍵點 1、這裡要先判斷是否是閏年; 2、針對閏年與非閏年進行處理; 直接上 C 語言版本程式碼: #include <stdio.h> #include <string.h&

輸入年月日輸出是這一年的c語言程式

做為一個學c語言的新手,今天學習了switch語句。當時老師說case語句後面如果不跟break;會按照順序執行,而這種結構也有它的優點,通過今天對這個程式的編寫,也對switch有了全新的認識; /* 請分別輸入年月日三個數值,計算出這是這一年的第幾天? (提示:要考慮閏

輸入年月日輸出這個日期是年的,java語言switch-case實現

充分利用switch-case 中break的特性,更方便的求出天數。 要點: 月份倒著寫,並且每個case 不要新增break;那麼,程式就會一直往下執行,直到month=1,進而求出了總的天數。 以下是原始碼: package third; impo

#輸入年月日輸出是今年的多少

import datetime def which_day(year,month,day): dt = datetime.date(year,month,day) du = dt.timetuple() print(du.tm_yday) #輸入年月日 year = int

【筆試題】輸入年月日輸出是這一年的

#include<iostream> using namespace std; bool isLeapYear(int year) { if(year%4==0&&year%100!=0 || year%400==0) {

輸入一個五位整數將它反向輸出。例如輸入12345輸出54321。

這個程式是我對建構函式有個更深的認識。 首先建構函式要先從頭至尾走一邊才會輸出,無論輸出語句加的位置(迴圈內,條件語句內...除外)。 然後建構函式遞迴可以把問題簡單化,本題如果按常規思路,應該是做個迴圈,把各個數首尾交換。但是用呼叫使得其可以一次輸出一位數,而並不是輸出一個數組。 這道題使我開闊了程式設計思

輸入年月日輸出年的 法一

/* * Copyright (c) 2014, 煙臺大學計算機學院 * All rights reserved. * 作 者:王穎 * 完成日期:2014 年 3 月 2 日 * 版 本 號:v1.0 * 輸入描述: 無 * 問題描述:輸入年月日,輸出是該年的第幾天

C語言 輸入年月日判斷是

判斷輸入年份為閏年還是平年.主要用於判斷二月份的天數. int isLeapYear(int year); int isLeapYear(int year) { int february =

C語言輸入成績等級輸出對應分數段

#include <stdio.h> #include <stdlib.h> /* run this program using the console pauser or

C語言 素數判斷輸出100以內的素數用逗號分隔第一個逗號不輸出

/* 質數(prime number)又稱素數,有無限個。 質數定義為在大於1的自然數中,除了1和它本身以外不再有其他因數,這樣的數稱為質數。 */ #include <stdio.h>

輸入年月日輸出年的 法二

/* * Copyright (c) 2014, 煙臺大學計算機學院 * All rights reserved. * 作 者:王穎 * 完成日期:2014 年 3 月 2 日 * 版 本 號:v1.0 * 輸入描述: 無 * 問題描述:輸入年月日,輸出是該年的第幾天

java_輸入年月日輸出天數

package ccf; import java.util.*; /* *輸入 年月日三個引數 *輸入出是那一年的多少天 */ public class bowen005 { public static void main(String[] args) {

輸入年月日判斷這是今年的多少以及今年還剩多少

輸入年月日,判斷這是今年的多少天 注意: 1.天數 = 上一月為止累計的天數 + 本月天數 2.閏年和非閏年的2月天數要作區分 3.本年為閏年,輸入的月份是否大於2也要作判斷

java (給出年月日計算該日年的n )

package com.ywx.testdemo01; import java.util.Scanner; /** * 題目:給出年月日,計算該日是該年的第n天 * @author yang

C語言列印圖形題5)程式設計輸入n輸出如下例(n=4)所示的高和上底均n的等腰梯形。

程式設計,輸入n,輸出如下例(n=5)所示的高和上底均為n的等腰梯形。                        ****                      ******        

(C語言列印圖形題4)程式設計輸入n輸出如下例(n=4)所示的高n的倒立等腰三角形。

程式設計,輸入n,輸出如下例(n=4)所示的高為n的等腰三角形。          *******            *****             ***              *  

C語言——輸入一個字符串將連續數字字符轉換數字

一個 [0 fine main span nbsp 輸出 print ont 輸入一個字符串,內有數字和非數字字符,例如: A123cdf 456.78cpc876.9er 849.1 將其中連續的數字作為一個實數,依次存放到一數組a中。例如123存放在a[0],456.